Q
程序終止觸發代碼
1
A
回答
7
Python的os模塊怎麼樣?有一個「刪除()」方法來做你想做的。
處理您程序的退出,你可以使用atexit模塊。
實施例:
import os
def delete_file(name):
os.remove(name)
import atexit
atexit.register(delete_file, file_path)
FILE_PATH是刪除該文件。
6
1
Python提供對tempfiles
的支持(請參閱同名模塊)。當程序終止時,這些可能不能保證被刪除,但操作系統知道,只要需要(例如,在某些Unix上,每天晚上),它們可以在沒有通知的情況下被刪除。
1
這是一個更簡單的方法,似乎正常工作。我沒有在真實代碼中使用它,所以可能存在我不知道的缺點。來自更有經驗的Pythonistas的批評值得歡迎。
import sys
def main():
print('main')
sys.exit(0)
try:
main()
finally:
print('cleanup code goes here')
+0
或者你只是把try/finally放在'main()'裏面。如果文件是由主應用程序控制的,但是如果它們是庫的一部分,那麼這將起作用,那麼就需要使用'atexit'處理程序。 – ncoghlan 2011-03-27 12:00:05
相關問題
- 1. 程序在後臺事件觸發時終止
- 2. Python終止進程退出代碼-1073741819
- 3. Yii2 - 觸發後從事件處理程序終止應用程序
- 4. objc_msg發送應用程序將終止
- 5. 程序終止時發生LoaderLock錯誤
- 6. 程序,不終止
- 7. 程序終止accept()
- 8. 終止scala程序?
- 9. HttpClient.PostAsync終止退出代碼爲0的程序
- 10. 從我的Cocoa代碼中終止一個應用程序
- 11. 終止按鈕點擊應用程序的代碼(在iPhone中)
- 12. 當TaskManager或CMD終止應用程序時執行代碼
- 13. 如何在終止後運行swift代碼應用程序
- 14. Python代碼查找序列中的終止密碼子
- 15. 觸發程序
- 16. 通過觸發器終止子工作流程
- 17. MFC - 終止處理程序
- 18. 應用程序終止
- 19. C程序不會終止
- 20. 終止應用程序
- 21. Python程序意外終止
- 22. 體面號程序終止
- 23. 使用Java終止程序
- 24. 關於Java終止程序
- 25. Java - Handle程序終止
- 26. 程序不會終止 - Java
- 27. 終止一個.net程序
- 28. 異常終止程序?
- 29. Nodejs程序不會終止
- 30. 程序意外終止C++
你應該趕上os.remove可以提高異常(例如,如果在Windows上刪除正在使用的文件。)的 – Oddthinking 2011-03-27 13:00:46
是當然,這只是一個示例代碼;-) – 2011-03-27 13:03:08