函数序列化Python 序列化算法
python 哪些类型不能被序列化
下面是可以被序列化的,反之则是不可序列化的
创新互联是专业的越秀网站建设公司,越秀接单;提供网站制作、网站设计,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行越秀网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
可以被序列化的类型有:
* None,True 和 False;
* 整数,浮点数,复数;
* 字符串,字节流,字节数组;
* 包含可pickle对象的tuples,lists,sets和dictionaries;
* 定义在module顶层的函数:
* 定义在module顶层的内置函数;
* 定义在module顶层的类;
* 拥有__dict__()或__setstate__()的自定义类型;
Python 为什么不能序列化函数闭包
闭包是可以包含自由(未绑定到特定对象)变量的代码块;这些变量不是在这个代码块内或者任何全局上下文中定义的,而是在定义代码块的环境中定义(局部变量)。
python基础之序列化和反序列化
1、序列化:就是把不可传输的对象转换为可存储或可传输的过程
2、反序列化:就是把在磁盘,等介质中的数据转换为对象
1、序列化并保存文件
obj = [1, 2, 3, 4]
with open('test.txt', 'wb') as f:
pickle.dump(obj, f)
with open('test.txt', 'rb') as f:
new_obj = pickle.load(f)
2、序列化成string形式
obj = [1, 2, 3, 4]
str1 = pickle.dumps(obj)
new_obj = pickle.loads(str1)
1、序列化并保存到文件:dump、load
2、序列化成json对象:dumps、loads
文章标题:函数序列化Python 序列化算法
标题URL:http://cdiso.cn/article/hpjdei.html