json & pickle
阿新 • • 發佈:2017-09-02
輸出 結果 轉換 pick 類型 blog 核心 with nbsp
json & pickle
json:一般用於不同的程序語言之間的序列化與反序列化,它的核心就是字符串,是字符串和python的基本數據類型之間的轉換
json模塊提供了四個功能:dumps, dump(序列化, 存), loads(反序列化, 讀), load
#json.loads用於將字典,列表,元素形式的字符串,轉換成相應的字典、列表、元組 #對於字典裏面的內容,裏面必須要是"" #例子: l = "[11,22,33,44]" import json result = json.loads(l) print(result,type(result)) #輸出結果:[11, 22, 33, 44] <class ‘list‘>json.dumps()#將Python的Python基本數據類型轉換成字符串 user_list = [11,22,33,44] import json s = json.dumps(user_list) print(s,type(s))
pickle:專用於python的基本數據類型和一種只有python能認識的序列之間的轉換,這種序列常常是bytes類型。pickle強大在於可以將代碼,類序列化
pickle模塊提供了四個功能:dumps, dump(序列化, 存), loads(反序列化, 讀), load
import pickle data = {"k1": 123, "k2": ‘Hello‘} # pickle.dumps 將數據通過特殊的形式轉換為只有python特有的類型 result = pickle.dumps(data) print(result, type(result)) #b‘\x80\x03}q\x00(X\x02\x00\x00\x00k1q\x01K{X\x02\x00\x00\x00k2q\x02X\x05\x00\x00\x00Helloq\x03u.‘ <class ‘bytes‘> # pickle.dump 將數據通過特殊的形式轉換為只有python特有的類型,並寫入文件 with open(‘dbb.txt‘, ‘wb‘) as f: pickle.dump(data, f)# pickle.loads 將python特有的類型還原成原數據 new_data = pickle.loads(result) print(new_data, type(new_data)) #{‘k1‘: 123, ‘k2‘: ‘Hello‘} <class ‘dict‘> # pickle.load 從文件中讀出只有python特有的類型還原成原數據 with open(‘dbb.txt‘, ‘rb‘) as f: new_data = pickle.load(f) print(new_data, type(new_data)) #{‘k1‘: 123, ‘k2‘: ‘Hello‘} <class ‘dict‘>
json & pickle