为了账号安全,请及时绑定邮箱和手机立即绑定

为什么不用setattr就会报错啊

class Person(object):
   def __init__(self, name, gender, birth, **kw):
       self.name = name
       self.gender = gender
       self.birth = birth
       for k, v in kw.iteritems():
           self.k=v
xiaoming = Person('Xiao Ming', 'Male', '1990-1-1', job='Student')
print xiaoming.name
print xiaoming.job

正在回答

1 回答

self.k = v 的含义是  v 的内容赋值给变量名k   生成的不是字典


而setattr(object, name, values) 给对象的属性赋值,若属性不存在,先创建再赋值。


2 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
python进阶
  • 参与学习       255532    人
  • 解答问题       3038    个

学习函数式、模块和面向对象编程,掌握Python高级程序设计

进入课程

为什么不用setattr就会报错啊

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号