簡體   English   中英

從腳本退出交互式python3會話

[英]Exiting interactive python3 session from script

我希望程序在加載和解析文件時檢測到錯誤時自動退出(即使使用-i從交互模式調用時)。 我已經嘗試過exit()sys.exit() ,但似乎沒有任何效果。 我沒有退出交互式會話,而是獲得了堆棧跟蹤。 例如,如果我有以下文件test.py

import sys
sys.exit(0)

當我運行python3 -i test.py我得到以下結果:

Traceback (most recent call last):
  File "test.py", line 2, in <module>
    sys.exit()
SystemExit
>>>

然后會話繼續進行,直到我退出自己為止(使用這些確切的行隨后會起作用,但不適用於從腳本中調用它們的行)。 我想念什么?

嘗試調用os._exit()直接退出,而不會引發異常

import os
os._exit(1)

請注意,這將繞過所有python關閉邏輯。 希望能幫助到你。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM