Python序列化與反序列化

2022-04-29 12:33:09 字數 3265 閱讀 5320

序列化:將python裡的基本型別如字典、列表、陣列等序列化為字串

反序列化:將字串反序列化為python裡的基本型別如字典、列表等

常用:json

r = requests.get('杭州')

r.encoding = 'utf-8'

print(r.text)

print()

dic = json.loads(r.text)

print(dic,type(dic))

dump 的功能,將序列化的內容寫入檔案:

import requests

import json

r = requests.get('杭州')

r.encoding = 'utf-8'

print(r.text)

print()

dic = json.loads(r.text)

print(dic,type(dic))

json.dump(dic,open('db','w',encoding='utf-8'))#將序列化的內容寫入檔案

load 的功能,將檔案讀入,反序列化:

import requests

import json

r = requests.get('杭州')

r.encoding = 'utf-8'

print(r.text)

print()

dic = json.loads(r.text)

print(dic,type(dic))

ret = json.load(open('db','r',encoding='utf-8'))#將讀入檔案,反序列化為python型別資料

跨語言操作,基於字串型別,適用範圍廣。

只有基礎的幾種型別:

+-------------------+---------------+

| python | json |

+*****+

=+| dict | object |

+-------------------+---------------+

| list, tuple | array |

+-------------------+---------------+

| str | string |

+-------------------+---------------+

| int, float | number |

+-------------------+---------------+

| true | true |

+-------------------+---------------+

| false | false |

+-------------------+---------------+

| none | null |

+-------------------+---------------+

pickle只能python用,其他語言不能用,同樣有dumps、loads,但是編碼格式只有python讀得懂。但是,如果寫了個類class,用json的dumps時會失敗,因為json試用範圍為以上幾種。

dump 的功能,將序列化的位元組byte內容寫入檔案:

load 的功能,將檔案讀入,反序列化:

import pickle

list = pickle.load(open('db','rb'))

print(list)

對所有型別,特別是複雜型別進行序列化操作,像物件導向的類。

僅適用於python語言的應用,如python遊戲的讀檔、存檔操作。python版本間反序列化有問題。

序列化和反序列化 C 序列化與反序列化。

序列化介紹 把物件用一種新的格式來表示。系列化只序列化資料。序列化不建議使用自動屬性 為什麼要序列化 將乙個複雜的物件轉換流,方便儲存與資訊交換。class program class person public int age 二進位制序列化 就是將物件變成流的過程,把物件變成byte class...

序列化與反序列化

把複雜的資料型別壓縮到乙個字串中 serialize 把變數和它們的值編碼成文字形式 unserialize 恢復原先變數 eg stooges array moe larry curly new serialize stooges print r new echo print r unserial...

序列化與反序列化

序列化是將物件處理為位元組流以儲存物件或傳輸到記憶體 資料庫或檔案。其主要目的是儲存物件的狀態,以便可以在需要時重新建立物件。相反的過程稱為反序列化。通過序列化,開發人員可以儲存物件的狀態,並在需要時重新建立該物件,從而提供物件的儲存以及資料交換。通過序列化,開發人員還可以執行類似如下的操作 通過 ...