国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

用pickle存儲Python的原生對象方法

2019-11-25 16:13:17
字體:
來源:轉載
供稿:網友

在Python中存儲數據到文件中時,簡單的做法是調用open函數執行文件寫入操作,但是這樣做的話,當我們要重新讀取文件內容時,就會出現類型不匹配的情況,因為讀取的都是字符串的形式,所以還需要進行類型轉換,這樣不簡潔。

或者使用eval函數把字符串轉換為對象,但是有時它過于強大,它會執行Python的任何表達式,甚至做出威脅系統正常工作的表達式,這樣做不安全。

如果想存儲Python原生對象,但又無法信賴文件的數據來源,那么pickle模塊會是個理想的選擇。

pickle模塊是能夠讓我們直接在文件中存儲幾乎任何Python對象的高級工具,并不要求我們把字符串轉換來轉換去,像是個超級通用的數據格式化和解析工具。

demo.py:

D = {'name':'Allen', 'age':21}f = open('p_data.pkl','wb')import picklepickle.dump(D,f)f.close()f=open('p_data.pkl','rb')e=pickle.load(f)print(e)print(type(e))

控制臺輸出:

{'name': 'Allen', 'age': 21}<class 'dict'>[Finished in 0.4s]

然后它會在指定路徑下生成p_data.pkl文件:

8003 7d71 0028 5804 0000 006e 616d 65710158 0500 0000 416c 6c65 6e71 0258 03000000 6167 6571 034b 1575 2e

如果控制臺提示”attributeError:'module' object has no attribute ‘dump'”,那么很可能是因為你的文件名命名為”pickle.py”,這與內置模塊文件重名了,改一下就可以了。。

以上這篇用pickle存儲Python的原生對象方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 大邑县| 温泉县| 吉隆县| 尉氏县| 揭东县| 安新县| 恩平市| 蒙自县| 灵武市| 富民县| 淮阳县| 沁水县| 大化| 漯河市| 博客| 赤城县| 张家界市| 和田县| 新余市| 越西县| 高邑县| 乳山市| 永福县| 石阡县| 宁化县| 乐安县| 达州市| 张掖市| 邵阳市| 泰兴市| 海淀区| 桑日县| 兰溪市| 海原县| 新巴尔虎左旗| 赞皇县| 航空| 石嘴山市| 黔西| 伽师县| 囊谦县|