Python class类转字典

有时候会需要从包装的类里面取出需要的数据,但有不能直接取出来:

可以通过如下代码,把class转换成字典:

# 将class转dict,以_开头的也要
def props_with_(obj):
    pr = {}
    for name in dir(obj):
        value = getattr(obj, name)
        if not name.startswith('__') and not callable(value):
            pr[name] = value
    return pr

其中dir的意思是返回类里面的元素;

getattr是返回对应属性名的value,类似于对类使用x.y这种用法。

单下划线和双下划线是私有变量或者私有函数,单下划线只能同一目录的文件访问,双下划线可以该文件访问。

你可能感兴趣的:(Python)