Home > Article > Backend Development > A brief introduction to json and pickle in Python
The editor below will bring you a brief talk about json and pickle in Python. The editor thinks it’s pretty good, so I’ll share it with you now and give it as a reference. Let’s follow the editor and take a look.
These are the two modules used for serialization:
• json: Used to convert between strings and python data types
• pickle: Used for python-specific types and python data Convert between types
The Json module provides four functions: dumps, dump, loads, load
The pickle module provides four functions: dumps, dump, loads, load
import pickle data = {'k1':123, 'k2':888} #dumps可以将数据类型转换成只有python才认识的字符串 p_str = pickle.dumps(data) print p_str 输出结果: (dp0 S'k2' p1 I888 sS'k1' p2 I123 s.
Convert the data into a string recognized only by Python and write it to the file:
import pickle data = {'k1':123, 'k2':888} #打开文件,然后将data写入 with open('data.pkl', 'wb') as f: pickle.dump(data, f) #同样读取的时候也需要打开文件 with open('data.pkl', 'rb') as f: data_1 = pickle.load(f) print data_1 结果: {'k2': 888, 'k1': 123} 文件中显示的内容与上面一致
The usage of json is the same as pickle
##
import json data = {'k1':123, 'k2':888} p_str = json.dumps(data) print p_str, type(p_str) 结果: {"k2": 123, "k1": 888} <type 'str'>Looks like a dictionary , but please note that this is actually a string, because json can only be in string format, it just looks like a dictionary.
import json data = {'k1':123, 'k2':123} #打开文件,然后将data写入 with open('data.pkl', 'w') as f: json.dump(data, f) #同样读取的时候也需要打开文件 with open('data.pkl', 'r') as f: data_1 = json.load(f) print(data_1, type(data_1)) 结果: ({u'k2': 123, u'k1': 123}, <type 'dict'>)can be read, and the type is correct.
What is the difference between pickle and json?
In the above two pieces of code, pickle uses the 'b' mode when writing and reading files, but json does not. Json can exchange data between different languages, while pickle can only be used between python. Json can only serialize the most basic data types, while pickle can serialize all data types, including classes and functions.The above is the detailed content of A brief introduction to json and pickle in Python. For more information, please follow other related articles on the PHP Chinese website!