我在Python中編寫了一個複雜的樹結構,我厭倦了每次運行代碼時創建樹對象並填充數據。製作「持久」對象
那麼,有沒有辦法讓你的對象在Python中「持久」?對於「耐用」,我的意思是如果有一種方法可以將所有對象保存爲文件中的字節,那麼當我再次運行代碼時,我可以創建並填充字節文件中的所有對象,恢復狀態我最後一次離開了代碼。
我猜可能有一個帖子有這個相同的問題,但我想不出一個更好的英語「耐用」術語。
我在Python中編寫了一個複雜的樹結構,我厭倦了每次運行代碼時創建樹對象並填充數據。製作「持久」對象
那麼,有沒有辦法讓你的對象在Python中「持久」?對於「耐用」,我的意思是如果有一種方法可以將所有對象保存爲文件中的字節,那麼當我再次運行代碼時,我可以創建並填充字節文件中的所有對象,恢復狀態我最後一次離開了代碼。
我猜可能有一個帖子有這個相同的問題,但我想不出一個更好的英語「耐用」術語。
您可以使用pickle
模塊到serialize
您的數據(這是將您的內存中表示轉換爲可寫入磁盤的內容的一般短語)。您在the Python documentation閱讀更多。
最簡單的代碼看起來像這樣你的對象存儲在一個文件中:
pickle.dump(myobject, open('myfile', 'w'))
並讀取它放回:
myobject = pickle.load(open('myfile', 'r'))
什麼是這種文件通常的文件名後綴? '.dat'? – juliomalegria
我不認爲有一個標準,儘管我已經看到'.pck'在這裏和那裏使用。 – Codemonk
我通常用'.pkl'來看這些(這就是我使用的)。 –
對於簡單的持久性,我建議shelve
模塊。
「持久」是你正在尋找的詞。看看'shelve'和'pickle'模塊。 – Gabe
@加貝,那是我尋找的魔法詞! – juliomalegria