代码跳过Python中的命令。谁能告诉我为什么?
所以,基本上,我只是在编码,如果你写一个游戏的名字,它就会打开它代码跳过Python中的命令。谁能告诉我为什么?,python,macos,macos-catalina,Python,Macos,Macos Catalina,所以,基本上,我只是在编码,如果你写一个游戏的名字,它就会打开它 print('You can play games here!') time.sleep(1.5) print('Snake') time.sleep(0.5) print('Maze') time.sleep(1.5) print('Type the name of one of the games to open it!') game = input() if game == 'Snake': import
print('You can play games here!')
time.sleep(1.5)
print('Snake')
time.sleep(0.5)
print('Maze')
time.sleep(1.5)
print('Type the name of one of the games to open it!')
game = input()
if game == 'Snake':
import Snake
else:
if game == 'Maze':
import Maze
print('This Program Is Still In Development')
当我选择“蛇”时,它工作得非常好。但当我选择“迷宫”时,它只是跳转到打印('此程序仍在开发中')
部分
有人能帮忙吗?顺便说一句,我在MAC OS X上
编辑:如果我做了elif
,它不会改变。函数也不起作用。出于某种原因,唯一有效的游戏是蛇
编辑2:奇怪的是,当我单独打开Maze.py时,它就工作了。如何更改?更改此选项:
else:
if statement:
# code
为此:
elif statement:
# code
此功能(添加了print
以查看其工作情况
):
导入时间
打印('你可以在这里玩游戏!')
时间。睡眠(1.5)
打印('Snake')
时间。睡眠(1.5)
打印(“迷宫”)
时间。睡眠(1.5)
game=input('键入其中一个游戏的名称以打开它!')
#将用户输入小写以具有较少的条件
#为了确保我们跳过条件,因为区分大小写
game=game.lower()
如果游戏==‘蛇’:
#做事
印刷品(“蛇”)
elif game==‘迷宫’:
#做事
打印(“迷宫”)
打印(“此程序仍在开发中”)
导入迷宫时,是否有任何可见的情况发生?(顺便说一句,Python中的模块名称使用小写)import Maze在Terminal中打开了一个新游戏。比如,当我输入“迷宫”时,它应该会打开游戏。我认为你的程序不会跳过任何内容,只需检查迷宫
模块的功能。。。顺便说一句,不知道是否只是代码片段,但我看到一些缩进漏洞,那么我们可以看到Maze.py模块吗?顺便说一下,我建议导入文件顶部的所有模块并创建主要函数(例如main()
或run()
),这样您就可以执行Maze.main()
,而不是import Maze
。以这种方式检测导入的问题会更容易,因为它们在一开始都会被调用。你能解释一下你认为这会产生什么影响并解决OP的问题吗?不是真的,但我甚至尝试过这样做:如果:(代码)如果:(代码)我想,在python3中,如果你不使用“elif”,它只是在任何条件下运行。但是如果你使用它,它会检查你的状况。我试过了,它成功了。为什么要打印???我的脚本应该打开另一个,而不是打印文本!很抱歉,因为我没有迷宫或蛇,所以我尝试打印来测试它,并在这里复制了代码