我寫了一個小的Python程序。通過運行main.py每15分鐘執行一次,它只是將2個其他python腳本作爲模塊加載。如果模塊出現故障,Python導入值
問題是當一個模塊發生故障時(例如因爲互聯網連接丟失)該怎麼做。其中一個模塊解析來自互聯網的訂閱源。如果失敗了,它必須承擔一定的價值。問題是將此值導入main.py.
模塊:
[...]
feed=feedparser.parse(url)
if not feed.feed:
# Assume Error
print("Error")
Temperature = 20
print 'Assuming', Temperature, 'degrees C'
sys.exit()
Temperature = [...]
當我導致模塊出現故障,該模塊導入後main.py退出。我該如何解決?
我認爲這是由調用sys.exit()引起的,但我不知道我應該調用什麼函數?
謝謝...
你有什麼錯誤嗎?如果是這樣,趕上它們,然後重試導入直到它工作。 –
當然'sys.exit()'會立即退出,沒有錯誤。如果你不想這麼做......你想要做什麼呢?如果你只是想跳過下一段代碼,寫一個'if' /'else'並把下一個代碼放在'else'中。 (或者,更好的是,將它重構爲一個函數,並在'else'中調用它。)但是沒有看到更多的代碼(或更好的[精簡版](http://sscce.org))很難給出更具體的建議。 – abarnert
您正在使用import語句作爲隱式過程調用。這不是模塊的用途。最好將代碼放入函數中並調用函數。此外,更好地處理錯誤情況(如不使用'sys.exit()')。 –