---恢复内容开始---
dic = {"name":"kevin","age":"20"}
f = open("json.txt",'w')
f.write(dic) 这里是无法写入的,写入要求是一个str,所以要用到json作为数据格式的转换,就是进行序列化的转换。
import json,pickle
data = json.dumps(dic)
f.write(data) 这样就可以写入。
需要通过以字典的方式读取,则读取的时候才去如下步骤:
f = open("json.txt",'r')
data = json.loads(f.read())
data["name"]
要注意json无法对函数进行序列化
data = json.dumps(dic)
f.write(data) 这两句可以用json.dump 直接代替
json.dump(dic,f)
同样load可以代替loads一些动作
f = open("json3.txt",'r')
data = json.load(f)
print(data["name"])
#############
dic = {"name":"kevin","age":"20"}
f = open("json.txt",'wb')
f.write(dic) 这里是无法写入的,写入要求是一个str,所以要用到json作为数据格式的转换,就是进行序列化的转换。
import json,pickle
data = pickle.dumps(dic)
f.write(data) 这样就可以写入。要注意,写入时,open的参数必须是wb,b是以二进制的方式写入
需要通过以字典的方式读取,则读取的时候才去如下步骤:
f = open("json.txt",'r')
data = pickle.loads(f.read())
data["name"]
pickle可以对函数进行序列化,进行loads时要注意,你在他方地址进行的dumps,到本机上进行load,必须本地也有相同点的函数。
#########################
shelve 通过这个方式生成的文件可以对文件进行对应格式的修改(字典)
f = shelve.open("file_name")
f'["info"] = {"name":"kevin","age":"18"}
可以通过get方法来获取相关的数据
data = f.get(‘info’)
d= dict
d.get(key) 可以获取key的对应value.
d.get(key,value) 获取key的值,没有的话返回一个默认值为value