JSON和pickle和shelve模块

JSON和pickle区别在于:
  JSON不能转换函数类等,但pickle可以进行转换,并且pickle也支持字典、列表等类型
  JSON格式可以全语言通用方便阅读查看,pickle格式只支持python使用
shelve跟pickle类似,但shelve可以生成一个字典对象,根据字典对象进行操作
import json

data = {"name": 123}

# 把字典转成JSON格式写入文件
f = open("json_text", "w")
f.write(json.dumps(data))
f.close()

# 把文件读取出来通过JSON转换成字典格式
f1 = open("json_text", "r")
data = json.loads(f1.read())
print(data["name"])
f1.close()



# 把字典转成JSON格式写入文件
f2 = open("json_text1", "w")
json.dump(data, f2)
f2.close()

# 把文件读取出来通过JSON转换成字典格式
f3 = open("json_text1", "r")
data1 = json.load(f3)
print(data1["name"])
f3.close()
import pickle

def f():
    print("ok")


# 把函数转换成pickle格式写入文件
f_pickle = open("pickle_text", "wb")
f_pickle.write(pickle.dumps(f))
f_pickle.close()

# 读取文件内容从pickle格式转换成函数地址,进行调用
f_pickle1 = open("pickle_text", "rb")
data= pickle.loads(f_pickle1.read())
f_pickle.close()
data()

 

import shelve

f = shelve.open("shelve_text")
# 写文件
f["name"] = "123"

# 读文件内容
print(f.get("name"))

 

posted @ 2024-11-22 18:03  GDquicksand  阅读(1)  评论(0编辑  收藏  举报