pickle模組 python 基本

2021-10-02 12:45:09 字數 1412 閱讀 8319

pickle模組實現了資料序列和反序列化。

pickle模組使用的資料格式是python專用的,能夠把python物件直接儲存到檔案,而不須要把他們轉化為字串,也不用底層的檔案訪問操作把它們寫入到乙個二進位制檔案中。

pickle模組中最常用的函式:

1. pickle.dump(obj, file, [,protocol])

函式的功能:接受乙個檔案控制代碼和乙個資料物件作為引數,把資料物件obj以特定的格式儲存到給定的檔案file裡。

引數:obj:想要序列化的obj物件。

file:檔名稱。

protocol:序列化使用的協議。如果該項省略,則預設為0。如果為負值或highest_protocol,則使用最高的協議版本。

2.pickle.load(file)

函式的功能:將file中的物件序列化讀出。

引數:file:檔名稱。

**# -*- coding:utf8 -*-

import pickle

#序列化到檔案

obj = 123, "abcdedf", ["ac", 123],

print(obj)

#wb 讀寫到二進位制檔案

f = open("./a.txt",'wb')

pickle.dump(obj,f)

f.close()

f = open("./a.txt",'rb')

print(pickle.load(f))

f.close()

123456789101112

3.pickle.dumps(obj[, protocol])

函式的功能:將obj物件序列化為string形式,而不是存入檔案中。

引數:obj:想要序列化的obj物件。

protocal:如果該項省略,則預設為0。如果為負值或highest_protocol,則使用最高的協議版本。

**# dumps功能

import pickle

ls = ['12', '34', '56']

# dumps 將資料通過特殊的形式轉換為只有python語言認識的字串

str = pickle.dumps(ls)

print(str)  

123456

4.pickle.loads(string)

函式的功能:從string中讀出序列化前的obj物件。

引數:string:檔名稱。

**import pickle

# loads  將pickle資料轉換為python的資料結構

ls = ['12', '34', '56']

str = pickle.dumps(ls)

mes = pickle.loads(str)

print(mes)

['aa', 'bb', 'cc']

python入門 pickle模組

泡菜技術 胡豬豬 another list 建立列表 pickle file open my list.pkl wb 開啟,建立my list.pkl pickle.dump my list,pickle file 把my list放進去 pickle file.close 關閉 胡豬豬 anoth...

python中的pickle模組

它可以序列化 物件並儲存到磁碟中,並在需要的時候讀取出來,任何物件都可以執行序列化操作。那麼什麼又是序列化呢?簡單來說,序列化就是用來處理物件流的機制。所謂物件流也就是將物件的內容進行流化,流的概念這裡不用多說 就是i o 我們可以對流化後的物件進行讀寫操作,也可將流化後的物件傳輸於網路之間 注 要...

Python 檔案操作 pickle模組

python中關於對檔案的操作存在這樣乙個問題 從檔案中讀取資料時返回的是字串。將各種型別的python物件寫入檔案是很容易的,但是將這些型別的資料從檔案中恢復出來是比較難的一件事。但是python提供的pickle模組可以幫助我們實現這樣的操作。pickle模組幾乎可以將所有的python物件都轉...