json和pickle模块
序列化模块:json 和 pickle
json,用于字符串 和 python数据类型间进行转换
pickle,用于python特有的类型 和 python的数据类型间进行转换
Json模块提供了四个功能:dumps、dump、loads、load
pickle模块提供了四个功能:dumps、dump、loads、load
json 模块
import json
s = '{"key1":"value1","key2":"value2"}'
ret = json.loads(s)
print(ret,type(ret))
l = '[11,22,3,56,75]'
result =json.loads(l)
print(result,type(result))
{'key1': 'value1', 'key2': 'value2'} <class 'dict'>
[11, 22, 3, 56, 75] <class 'list'>
import json
ret = json.load(open('ethan.txt','r'))
print(ret,type(ret))
{'key1': 'value1', 'key2': 'value2'} <class 'dict'>
import json
di = {"key1":"value1","key2":"value2"}
ret = json.dumps(di)
print(ret,type(ret))
{"key1": "value1", "key2": "value2"} <class 'str'>
json.dump(di,open('test2.txt','a+'))
{"key1": "value1", "key2": "value2"}
pickle 模块
import pickle
d = {'name': 'ethan', 'age': 28}
ret = pickle.dumps(d)
print(ret, type(ret))
l = [11, 22, 3, 45, 54]
res = pickle.dumps(l)
print(res)
pickle.dump(d, open('test2.txt', 'ab'))
f = open('test2.txt', 'rb')
r = pickle.loads(f.read())
print(r)
b'\x80\x03}q\x00(X\x04\x00\x00\x00nameq\x01X\x05\x00\x00\x00ethanq\x02X\x03\x00\x00\x00ageq\x03K\x1cu.' <class 'bytes'>
b'\x80\x03]q\x00(K\x0bK\x16K\x03K-K6e.'
{'name': 'ethan', 'age': 28}
总结
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程