我有一个类,我想用另一个实例覆盖一个实例(除了一个字段)。我的方法是这样的:
for key in my_class_instance_1.__dict__.keys():
if key != "key_i_dont_want_to_overwrite":
my_class_instance_1[key] = my_class_instance_2[key]
问题是我得到了错误TypeError: 'MyClass' object is not subscriptable
。你知道吗
我显然也无法访问这样的实例:my_class_instance_1.f"{key}"
。你知道吗
我不知道如何动态地访问类上的键来覆盖它。我知道我可以使用getattr(my_class_instance_2, key)
来访问值,但这无助于覆盖my_class_instance_1
上的值。你知道吗
多亏了@kindall和@skullgoblet1089的回答,我才弄明白这一点,但是对于其他有这个问题的人,让我给你看看工作代码:
有一个
getattr()
的同级函数叫做setattr()
,它允许您设置一个属性。你知道吗相关问题 更多 >
编程相关推荐