【发布时间】:2014-05-30 18:39:25
【问题描述】:
这周我一直在学习 python,从一个蛇游戏教程开始。然后我在游戏中添加了一些功能,让它变得很棒。我添加的一项功能是能够在蛇死后重新启动游戏。死亡后,会出现一个屏幕,提示用户按 y 或 n 重新开始游戏。按 y 总是会重新开始游戏,这让我很满意。按 n 将脚本退出到终端,但前提是游戏只玩了一次。如果游戏玩了两次,则选择了 n,屏幕变黑,一切都没有响应。蛇死后,会调用一个函数。还有一些其他的点点滴滴,但我相信这就是问题所在:
while True:
for evt in pygame.event.get():
if evt.key == ord('y')
restart = "y"
break
elif evt.key == ord('n'):
restart = "noty"
break
if restart == 'y'
os.execl(sys.executable, sys.executable, × sys.argv)
else:
pygame.quit()
sys.exit()
os.exit()
提前致谢
【问题讨论】:
-
我怀疑最后两行。你不是只想退出pygame吗?
-
os.execl。自动更正!
-
@mauve,说实话,我不太确定。我的想法是退出一切并重新开始