举个例子,
class A():
dictionary={'item1':'value1','item2':'value2'}
class B(A):
我希望能够将第三项添加到B类中已经存在的超类字典中。不完全覆盖它,只需添加第三个值。
如何做到这一点?
答案 0 :(得分:2)
您需要将可变字典的副本创建为B
:
class B(A):
dictionary = A.dictionary.copy()
dictionary['key'] = 'value'
您可以使用dict()
callable:
class B(A):
dictionary = dict(A.dictionary, key='value')
无论哪种方式,B.dictionary
现在都有3个键值对,而A
只有两个:
>>> class A():
... dictionary={'item1':'value1','item2':'value2'}
...
>>> class B(A):
... dictionary = dict(A.dictionary, key='value')
...
>>> A.dictionary
{'item2': 'value2', 'item1': 'value1'}
>>> B.dictionary
{'item2': 'value2', 'item1': 'value1', 'key': 'value'}