一、持久化 --shelve 持久化工具 (1)作用:類似字典,用kv對保存數據,存取方式類似於字典 (2)例子:通過一下案例創建了一個資料庫,第二個程式我們讀取了資料庫 2.shelve特性 (1)註意:不支持多個應用並行寫入,為瞭解決這個問題,open的時候可以使用writeback=True, ...
一、持久化 --shelve
持久化工具
(1)作用:類似字典,用kv對保存數據,存取方式類似於字典
(2)例子:通過一下案例創建了一個資料庫,第二個程式我們讀取了資料庫
#使用shelve創建文件並使用 import shelve shv = shelve.open(r"shv.db") shv["one"] = 1 shv["two"] = 2 shv.close()
shv = shelve.open(r"shv.db") try: print(shv["one"]) print(shv["three"]) except: print("列印three時出錯了") finally: shv.close()
2.shelve特性
(1)註意:不支持多個應用並行寫入,為瞭解決這個問題,open的時候可以使用writeback=True,註意一點如果不傳入這個參數我們後面對數據的更改只會在記憶體中進行更改,而不會寫回資料庫
(2)寫回問題
shelve不會等待持久化對象進行任何更改
shv = shelve.open(r"shv.db",writeback=True) try: shv["one"] = {"eind":1,"zwei":2,"drei":3} one = shv["one"] print(one) #這裡就對 數據進行了更改,如果沒有上面writeback=True,下麵額語句就白寫了 one["eind"] = 100 print(one) finally: shv.close()
三、源碼
d22_4_shelve_module.py
地址:https://github.com/ruigege66/Python_learning/blob/master/d22_4_shelve_module.py
2.CSDN:https://blog.csdn.net/weixin_44630050(心悅君兮君不知-睿)
3.博客園:https://www.cnblogs.com/ruigege0000/
4.歡迎關註微信公眾號:傅里葉變換