В Вашем случае, что можно сделать:
z = dict(x.items() + y.items())
Это, поскольку Вы хотите его, поместит финал dict в z
и заставит значение для ключа b
быть правильно переопределенным вторым (y
) значение dict:
>>> x = {'a':1, 'b': 2}
>>> y = {'b':10, 'c': 11}
>>> z = dict(x.items() + y.items())
>>> z
{'a': 1, 'c': 11, 'b': 10}
при использовании Python 3 это только немного более сложно. Создать z
:
>>> z = dict(list(x.items()) + list(y.items()))
>>> z
{'a': 1, 'c': 11, 'b': 10}
Вместо того, чтобы принять сам параметр, методы класса берут параметр cls , который указывает на класс — а не экземпляр объекта —, когда метод называют. Так как метод класса только имеет доступ к этому cls аргументу, это, can’t изменяют состояние экземпляра объекта . Это потребовало бы доступа к сам. Как - когда-либо, методы класса могут все еще изменить состояние класса, которое применяется через все экземпляры класса.
Кредит к 'книге
' Приемов Python