Terminating a python text adventure
本问题已经有最佳答案,请猛点这里访问。
所以我写了一些文本冒险,有很多嵌套的if语句。然而,有时我想用其中一个if语句终止程序,以给出"游戏结束"。我尝试过quit()和exit(),但最多还是会输出一条错误消息:
1 2 3 | Traceback (most recent call last): File"<string>", line 9, in 0 SystemExit: 0 |
我没有使用任何try/except语句,只是if语句。例如:
1 2 3 4 5 6 7 8 | import sys if True: print"Hello guv'na" if True: print"Good day, Good day" sys.exit(0) if True: print"What's all this then?" |
产量:
1 2 3 4 5 | Hello guv'na Good day, Good day Traceback (most recent call last): File"/Users/austin/test.py", line 6, in 0 builtins.SystemExit: 0 |
我只想让程序在"好的一天,好的一天"之后终止,没有任何消息。这有可能吗?
蛮力方法(下面)应该做你想做的(不管怎样,还是要杀死程序)。
1 2 | import os os.system('pkill python') |
如果您看到了这个异常,这意味着有东西正在捕获并打印它。
我猜你有一个这样的尝试/例外块:
1 2 3 4 | try: do_something() except: print_exc() |
这里,
bare
改为使用:
1 2 3 4 | try: do_something() except Exception: print_exc() |
这样,您将只捕获