python序列化对象的函数_使 Python 对象可序列化的函数
from copy import deepcopy
from str import basestring
def enserializable(model):
"""
本函数用于将对象可序列化,且返回的字典都是新的(deepcopy)
"""
if isinstance(model, dict):
model = deepcopy(model)
to_pop = []
for k in model:
# 过滤
if isinstance(k, basestring) and (k.startswith(‘_‘) or k.isupper()):
to_pop.append(k)
continue
# 递归
else:
model[k] = enserializable(model[k])
for k in to_pop:
model.pop(k)
return model
elif hasattr(model, ‘__dict__‘):
return enserializable(model.__dict__)
elif isinstance(model, (list, tuple)):
return [enserializable(m) for m in model]
else:
return model
原文:http://my.oschina.net/lionets/blog/380934
python序列化对象的函数_使 Python 对象可序列化的函数相关推荐
- python输入esc退出循环_使python在按ESC键时立即退出程序
在正常输入下没有办法做到这一点.raw_input一次读取整行.在 在某些(极少数)情况下,您可以这样做:message = '' while True: ch = sys.stdin.read(1) ...
- python开发效率高吗_提升python开发者工作效率的六个库,你知道几个?
无论你现在是否从事Python开发,以后想从事Python,你最好了解一下几个库,它能让你无论是学习,还是职业进阶都有很大帮助. Python 凭借其易用的特点,已经被工业界和学术界广泛采用.另一方面 ...
- python语音控制电脑程序_用Python编程实现语音控制电脑_天津SEO
天津SEO 电脑面前的你,是否也希望能让电脑听命于你? 当你累的时候,只需说一声"我累了",电脑就会放着优雅的轻音乐来让你放松. 或许你希望你在百忙之中,能让电脑郎读最新的NBA比 ...
- python helper函数_使函数定义以python文件顺序独立
使函数定义以python文件顺序独立 我使用Python CGI. 我无法在定义函数之前调用它. 在Oracle PL / SQL中,存在"转发声明"的技巧:将所有函数都命名为最顶 ...
- python 参数类型的多态_【Python】面向对象:类与对象\封装\继承\多态
六.Python面向对象--类与对象\封装\继承\多态 1.什么是面向对象编程 1.1 程序设计的范式:程序可控,易于理解 1.2 抽象并建立对象模型 1.3 程序是不同对象相互调用的逻辑.每个对象在 ...
- python3中zip函数_用python实现矩阵转置,python3 中zip()函数
前几天群里有同学提出了一个问题:手头现在有个列表,列表里面两个元素,比如[1, 2],之后不断的添加新的列表,往原来相应位置添加.例如添加[3, 4]使原列表扩充为[[1, 3], [2, 4]],再 ...
- python一切皆对象的理解_在 Python 中万物皆对象
在 Python 中一切都是对象,并且几乎一切都有属性和方法.所有的函数都有一个内置的 __doc__ 属性,它会返回在函数源代码中定义的 doc string:sys 模块是一个对象,它有一个叫作 ...
- python一些常用函数_【python】常用的一些内置函数
1.cmp cmp(A,B)函数,比较A,B的大小,如果A大于B,返回1,A小于B返回-1,A等于B返回0 print cmp(12,33) >>>-1 print cmp(&quo ...
- python四大高阶函数_详谈Python高阶函数与函数装饰器(推荐)
一.上节回顾 Python2与Python3字符编码问题,不管你是初学者还是已经对Python的项目了如指掌了,都会犯一些编码上面的错误.我在这里简单归纳Python3和Python2各自的区别. 首 ...
最新文章
- ie与firefox 关于js 的差别(转载)
- C++自学11:命名空间(using namespace)
- 基于图像gist特征的NWPU-RESISC45数据分类实战
- 大数据与机器学习:实践方法与行业案例.1.4 本章小结
- DL-C_1_week_1_1
- vbs整人代码蓝屏_求大量VBS整人代码.
- Visio 画流程图 入门
- 概率论的学习和整理10:古典概型 和 二项分布(N重伯努利试验)
- win10-11全版本下载地址MSDN纯净版ISO-20220217更新
- linux安装智能输入法,Ubuntu中文智能拼音输入法配置
- Excel文档瘦身,一键压缩xlsx文件中所有的图片,解决excel文件太大的问题
- 逆天神器!“国外“最新版本,直接一键破解所有WiFi密码,傻眼了!
- Linux:配置本地yum源仓库
- 【springboot】报错Resolved [org.springframework.http.converter.HttpMessageNotWritableException: No conve
- 南京地铁6号线双龙街出入口线区间盾构段开工
- 用python给pdf批量添加水印,并给pdf加密
- Celery介绍——手机短信异步发送
- 8086CPU指令系统 串操作指令和处理机控制指令
- Alexa Fluor 488标记亲和纯化驴抗兔IgG(H+L)二抗说明书
- VMware ESXi安装NVIDIA GPU显卡硬件驱动和配置vGPU
热门文章
- python list index方法,Python List.index()方法
- 模为2的逆元是什么_两种求模m逆元的方法
- javascript 唯一值的集合 Set对象
- 基础线性规划实现---python
- Brief C Programs of the Bombs
- 【OpenCV 例程200篇】67. 空间域图像增强的综合应用
- 鸿蒙系统中的 JS 开发框架
- 国产主可控的嵌入式仿真测试软件SkyEye与可信编译器L2C的核心翻译介绍
- 用递归与分治策略求解网球循环赛日程表_算法设计:分治法(比赛日程安排)...
- python opencv轮廓检测_OpenCV 轮廓检测的实现方法