我的游戏为什么运行不成功呢呜呜呜
学习python第一天按照小甲鱼的b站视频指导编了一个这样的游戏,但是我输入数字之后,按回车,我的文件就直接消失掉了,为什么呢?
是我的代码出问题了吗?
"""用Python设计第一个游戏"""
temp = input("Cici现在心里想的是哪个数字:")
guess = int(temp)
if guess == 9:
print("你是俺心里的蛔虫吗?!")
print("哼,猜中了也没奖励!")
if guess == 6:
print("俺看你才是老6")
if guess == 8:
print("想发财想疯掉了是吧?")
else:
print("猜错啦,Cici现在心里想的是8!")
print("游戏结束,不玩啦~")
print("what do you want? stupid?")
你的代码出现了问题。问题在于你使用了 if 和 else 的组合,而你的 else 语句只与 guess == 8 条件相关联。这意味着,无论 guess 的值是多少, else 语句都会被执行。因此,当 guess 不等于8时, else 语句会被执行,导致输出错误的猜测结果。
为了解决这个问题,你可以使用 elif 语句来替代 else 语句。 elif 语句可以用来检查多个条件,只有当前面的条件不满足时才会继续检查后面的条件。修改后的代码如下:
temp = input("Cici现在心里想的是哪个数字:")
guess = int(temp)
if guess == 9:
print("你是俺心里的蛔虫吗?!")
print("哼,猜中了也没奖励!")
elif guess == 6:
print("俺看你才是老6")
elif guess == 8:
print("想发财想疯掉了是吧?")
else:
print("猜错啦,Cici现在心里想的是8!")
print("游戏结束,不玩啦~")
print("what do you want? stupid?")
这样修改后,当 guess 不等于9、6和8时, else 语句就会被执行,输出正确的猜测结果。 根据您提供的代码,问题出在您的条件判断语句上。在这个代码段中,使用了 if 和 else 来判断用户猜测的数字是否等于 8,但是在用户猜测的数字不等于 8 的情况下,并没有正确地处理输出结果。
为了修正这个问题,您可以将第一个 if guess == 9: 改为 elif guess == 9:,并将最后一个 else: 修改为 else: 并缩进到与之前的 if 对齐,以保证输出结果的逻辑正确性。
以下是修改后的代码示例:
temp = input("Cici现在心里想的是哪个数字:")
guess = int(temp)
if guess == 9:
print("你是俺心里的蛔虫吗?!")
print("哼,猜中了也没奖励!")
elif guess == 6:
print("俺看你才是老6")
elif guess == 8:
print("想发财想疯掉了是吧?")
else:
print("猜错啦,Cici现在心里想的是8!")
print("游戏结束,不玩啦~")
print("what do you want? stupid?")
这样修改后,程序会根据用户输入的数字输出相应的结果。如果用户猜中 9,则会输出一段话;如果猜中 6,则会输出另一段话;如果猜中 8,则会输出一句话;否则,将输出默认的猜错提示。
请注意,代码运行后输入数字并按回车,文件不会消失,而是会根据代码逻辑输出相应的结果。如果问题仍然存在,请检查您的环境设置,并确保在正确的地方运行您的代码。如果仍然遇到问题,请提供更多相关信息以便我帮助您解决问题。
如果问题已经解决,请设置最佳答案 用idle运行,不是双击打开 最后一行加上:
input() isdkz 发表于 2023-8-23 15:18
你的代码出现了问题。问题在于你使用了 if 和 else 的组合,而你的 else 语句只与 guess == 8 条件相关联。 ...
谢谢你!吴彦祖!!!{:5_100:}
原来是酱! 首先,你的代码有问题,不能有多个 if 相连。应当是:"""用Python设计第一个游戏"""
temp = input("Cici现在心里想的是哪个数字:")
guess = int(temp)
if guess == 9:
print("你是俺心里的蛔虫吗?!")
print("哼,猜中了也没奖励!")
else:
if guess == 6:
print("俺看你才是老6")
else:
if guess == 8:
print("想发财想疯掉了是吧?")
else:
print("猜错啦,Cici现在心里想的是8!")
print("游戏结束,不玩啦~")
print("what do you want? stupid?")其次,你的文件打开方式不对。打开方式详见https://fishc.com.cn/forum.php?mod=redirect&goto=findpost&ptid=231387&pid=6299648 陶远航 发表于 2023-8-23 15:18
根据您提供的代码,问题出在您的条件判断语句上。在这个代码段中,使用了 if 和 else 来判断用户猜测的数字 ...
谢谢你!金城武!!{:5_109:}
祝您发财! 1909997160 发表于 2023-8-23 15:33
谢谢你!金城武!!
祝您发财!
原理是:
程序结束后会自动关闭窗口,input的作用是让用户输入一段内容,起到阻止程序自动关闭的作用
解决了可以设置一下最佳答案吗 本帖最后由 smallwh 于 2023-8-23 15:37 编辑
方案一:不要双击打开,用IDLE运行,因为有时候代码执行太快会一闪而过。
方案二:将最后的print()语句改为input(),此时既可以双击打开,也可以用IDLE运行。
除此之外,建议你将第二个和第三个if改为elif:
"""用Python设计第一个游戏"""
temp = input("Cici现在心里想的是哪个数字:")
guess = int(temp)
if guess == 9:
print("你是俺心里的蛔虫吗?!")
print("哼,猜中了也没奖励!")
elif guess == 6:
print("俺看你才是老6")
elif guess == 8:
print("想发财想疯掉了是吧?")
else:
print("猜错啦,Cici现在心里想的是8!")
print("游戏结束,不玩啦~")
input("what do you want? stupid?") 陈尚涵 发表于 2023-8-23 15:24
用idle运行,不是双击打开
但我把这个命名为game.py然后存在桌面上了,我以为双击桌面上的图标就可以打开了呜呜呜,原来不行哦,谢谢你黎明!{:5_109:} 1909997160 发表于 2023-8-23 15:36
但我把这个命名为game.py然后存在桌面上了,我以为双击桌面上的图标就可以打开了呜呜呜,原来不行哦,谢 ...
Run->Run module或者f5,有用给个最佳吧{:10_254:} 陶远航 发表于 2023-8-23 15:35
原理是:
程序结束后会自动关闭窗口,input的作用是让用户输入一段内容,起到阻止程序自动关闭的作用
...
谢谢您耐心的回答,但是我刚刚已经设置别的答案为最佳了,因为他教得很详细,我一步一步对比着操作来的,所以下次一定!祝您发财!比芯! 1909997160 发表于 2023-8-23 15:41
谢谢您耐心的回答,但是我刚刚已经设置别的答案为最佳了,因为他教得很详细,我一步一步对比着操作来的, ...
嗯嗯,没事的 谢谢您!问题已解决啦~
页:
[1]