原创 

java spring BeanUtils.copyProperties的python3实现,属性复制 setattr

分类:python    884人阅读    IT小君  2022-04-09 11:01
        user = User()
        data['place'] = '/'.join(data['place'])
        data['hometown'] = '/'.join(data['hometown'])
        data['brithday'] = data['brithday'][0:10]

        for attr in data:
            setattr(user, attr, data[attr])

其中data 为python dict


关于setattr:

Python setattr() 函数

Python 内置函数 Python 内置函数


描述

setattr() 函数对应函数 getattr(),用于设置属性值,该属性不一定是存在的。

语法

setattr() 语法:

setattr(object, name, value)

参数

  • object -- 对象。
  • name -- 字符串,对象属性。
  • value -- 属性值。

返回值

无。

实例

以下实例展示了 setattr() 函数的使用方法:

对已存在的属性进行赋值:

>>>class A(object): ... bar = 1 ... >>> a = A() >>> getattr(a, 'bar') # 获取属性 bar 值 1 >>> setattr(a, 'bar', 5) # 设置属性 bar 值 >>> a.bar 5

如果属性不存在会创建一个新的对象属性,并对属性赋值:

>>>class A(): ... name = "runoob" ... >>> a = A() >>> setattr(a, "age", 28) >>> print(a.age) 28 >>>

Python 内置函数 Python 内置函数

支付宝打赏 微信打赏

如果文章对你有帮助,欢迎点击上方按钮打赏作者

 工具推荐 更多»