python库如何实现对象的转换

python库如何实现对象的转换

概念

1、attrs和cattrs这两个库实现了单个对象的转换。

首先我们要肯定一下 attrs 这个库,它可以极大地简化 python 类的定义,同时每个字段可以定义多种数据类型。

2、attrs每个字段可以定义多种数据类型,cattrs这个库就相对弱一些了,如果把 data 换成数组,用 cattrs 还是不怎么好转换的,另外它的 structure 和 unstructure 在某些情景下容错能力较差。

实例

fromattrimportattrs,attrib
fromcattrimportstructure,unstructure

@attrs
classUser(object):
name=attrib()
age=attrib()

data={
'name':'Germey',
'age':23
}
user=structure(data,User)
print('user',user)
json=unstructure(user)
print('json',json)

以上就是python库实现对象转换的方法,希望对大家有所帮助。更多python学习指路:python基础教程