是否在持續運行的腳本的重新執行時使用對象?如果我想要一個正在運行的腳本重新執行自己以獲取任何代碼更改,(os.exec *)是否有一種方法可以在重新執行後保留對象以進行訪問?我可以用酸洗的ascii數據設置環境變量,或者將這些數據寫入管道並在重新執行後重新讀取它,但這看起來不雅觀或者像黑客一樣。即使這樣做,並不是所有的食品都能很好地醃製。通過重新執行的Python對象持久化
1
A
回答
3
如果你把你的代碼模塊中,你可以使用reload()
標準函數加載代碼的新版本。你的主要模塊看起來是這樣的:
import mymodule
while mymodule.go():
reload(mymodule)
每當你想重新加載模塊的代碼,從go()
返回True
。當你想退出時,返回False
。
1
結賬shelve
。
import shelve
db = shelve.open("database", "c")
db["one"] = 1
db["two"] = 2
db["three"] = 3
db.close()
+0
,如果我可以逃脫它,我不想擔心什麼對象即時通訊試圖保存,如果他們會按預期醃製。 – tMC 2011-05-17 00:11:59
相關問題
- 1. 合併或更新持久化對象
- 2. 通過ssh運行持久化進程
- 3. NonUniqueObjectException當持久化對象
- 4. .net對象持久化
- 5. 如何讓一個web對象中的Python對象持久化?
- 6. Python對象持久性
- 7. 對持久化JPA實體執行通用搜索
- 8. 在rails上通過ruby請求持久化ActiveRecord對象
- 9. 通過級聯持久化對象的JPA事務/回滾行爲
- 10. Hibernate持久對象行爲
- 11. 實體對象沒有得到持久化的:新的對象是通過沒有標記的關係發現
- 12. 通過域封裝的持久性,還是通過Repository持久化?
- 13. 簡單的對象持久化+休眠
- 14. Symfony2:獲取持久化對象的ID
- 15. python中對象的持久性
- 16. 通過Ruby持久化環境變量
- 17. 如何通過JPA持久化java.util.Set?
- 18. 持久化XML解析對象
- 19. 對象持久化後Hibernate assertEquals失敗
- 20. localStorage持久化鍵作爲對象嗎?
- 21. 在oracle blob中持久化java對象
- 22. Symfony2 Mongodb多次持久化對象
- 23. Hibernate:java.lang.StackOverflowError嘗試持久化對象圖時
- 24. Javascript:持久化窗口對象引用?
- 25. java hibernate多持久化對象?
- 26. 工廠模式和對象持久化
- 27. 如何更新持久化Java對象的結構?
- 28. 通過WCF的DevExpress eXpress持久對象(XPO)
- 29. NSManagedObjectContext不會持久更新對象
- 30. 在Hibernate中持久化具有其對象標識的對象
「re-excution」是什麼意思?您的腳本被終止並由用戶在同一會話中再次運行?或者你的腳本使用os.exec()調用它自己? – 2011-05-17 00:08:59
@boaz腳本調用os.exec自己 – tMC 2011-05-17 00:21:10
然後這對我來說似乎是一個壞主意,除非你想並行運行多個進程(但你不想持久化)。 Python有很多用於運行python代碼的工具,所以你不需要爲python腳本使用os.exec()。你看過Greg的解決方案嗎? – 2011-05-17 00:58:54