让我们说这是我的模特
class A(models.Model):
name = models.CharField(max_length=10)
我有这个清单:
l = ['name']
我想这样做:
a = A()
a.l[0] = 'Jack'
为什么python不会从name
替换list
使a.name
成为{{1}}?
TIA
答案 0 :(得分:3)
因为Python查找a.l
,如果要找到它,它会尝试设置它的第一个元素。
您正在寻找setattr:
setattr(a, 'name', 'Jack')
或
setattr(a, l[0], 'Jack')