前提实例:
将一个字典存放在文件里
#存入数据
info = { 'name':'chy', 'age':18 } f = open("test.txt","w") f.write(str(info)) f.close()
#读取数据
f = open("test.txt","r") data = eval(f.read()) f.close()
print(data["name"])
以上使用str()和eval()函数对数据进行操作并不是规范使用,这样很low,所以对于这种字典形式的数据的录入转换,就需要引入json了。
#存入数据 import json info = { 'name':'chy', 'age':18 } f = open("test.txt","w") f.write(json.dumps(info)) f.close()
#读取数据 import json f = open("test.txt","r") data = json.loads(f.read()) f.close() print(data["name"])
另外pickle和json使用方式相似,pickle是python特有的,可以对python所有的数据类型进行序列化(提示,如果字典的值有函数名的话,那么在读取的程序里必须有相同函数名的函数,内容不必一样)
#存入数据,将字典转换为二进制数据 import pickle info = { 'name':'chy', 'age':18 } f = open("test.txt","wb") f.write(pickle.dumps(info)) f.close()
#读取数据 import pickle f = open("test.txt","rb") data = pickle.loads(f.read()) f.close() print(data["name"])