一旦某件事情完成,我该如何完全停止代码?
我已经排除了os.exit
,sys.exit()
,raise SystemExit(0)
,quit
和exit()
。一旦某件事情完成,我该如何完全停止代码?
我想完全停止,一旦我的多个条件都满足了。
while x: #do something
#for loop
#if a:
#do something
print "Game over"
os.exit
#elif b:
#do something
print "Game over"
os.exit
break
while y:
#(...same form as the previous one^)
#get user input for the next turn
#while 1
#...
#while n
当我玩游戏,而游戏在消息被打印到屏幕上,它仍然是用户输入尽管被告知停止问。
回答:
这是怎么sys.exit()应该工作。如果您导入并达到它,Sys.exit()应该可以工作。也许更多的故障排除信息会有帮助?这适用于Python和python3
#!/usr/bin/env python import sys
while 1==1:
print("This will print")
if 2==2:
print("This will also print")
sys.exit()
print("This will not print")
print("This will not print")
这是我的终端输出:
Matts-MacBook-Pro:Desktop mw$ ./stupid.py This will print
This will also print
编辑。
正如@goosfraba所说,sys.exit(0)可能是最佳实践。提供的The link表示没有参数可以有未定义的行为。像1或“这是一个错误信息”的另一个参数也会起作用。
回答:
有了这些小改动,我设法使这项工作:
import os while True:
#do something
#for loop
if False:
#do something
print "Game over A"
os._exit(0)
elif True:
#do something
print "Game over B"
os._exit(0)
break
print "Not over"
输出:
Game over B
注缺乏不高于输出。 或许你需要_exit(<status>)
?
回答:
你应该使用:
sys.exit(n)
,其中可选的n是退出状态的整数。
请检查:https://docs.python.org/2/library/sys.html
以上是 一旦某件事情完成,我该如何完全停止代码? 的全部内容, 来源链接: utcz.com/qa/267068.html