Python学习---重点模块之pickle
仅仅支持Python里面的函数等相关功能的实现,而且pickle写入的内容是看不出来的,读取的时候要求有原内容
pickled的写入:
1 2 3 4 5 6 7 8 9 10 11 12 13 | import pickle def fun(): print ( 'ok' ) data = pickle.dumps(fun) # print(type(data)) # <class 'bytes'> # 注意这里是wb写入,b是二进制的意思,将里面的内容转换为bytes写入 # 否则写入的是str类型, write() argument must be str, not bytes # 不要加入编码,否则会报错,binary mode doesn't take an encoding argument with open ( 'pickle.txt' , 'wb' )as file : file .write(data) |
pickle的读取:
1 2 3 4 5 6 7 8 9 10 11 | import pickle def fun(): print ( 'ok' ) # 注意这里是rb读取,b是二进制的意思,读取里面的内容转换为bytes写入 # 读取的时候,一定要添加原来的函数,否则找不到那段内存的指引,报错 # 不要加入编码,否则会报错,binary mode doesn't take an encoding argument with open ( 'pickle.txt' , 'rb' )as file : data = file .read() pickle_data = pickle.loads(data) print ( type (pickle_data)) pickle_data() |
注意:pickle也有load()和dump()方法,参考json
· 如果单表数据量大,只能考虑分库分表吗?
· 一文彻底搞懂 MCP:AI 大模型的标准化工具箱
· 电商平台中订单未支付过期如何实现自动关单?
· 用 .NET NativeAOT 构建完全 distroless 的静态链接应用
· 为什么构造函数需要尽可能的简单
· C# 多项目打包时如何将项目引用转为包依赖
· 一款让 Everything 更加如虎添翼的 .NET 开源辅助工具!
· 如果单表数据量大,只能考虑分库分表吗?
· 在Winform开发框架支持多种数据库基础上,增加对国产数据库人大金仓的支持
· 搭建Trae+Vue3的AI开发环境