2 EYLÜL 2008, Salı
Nasıl tek bir ifadede iki Python sözlükler birleştirebilir miyim?
İki Python sözlükler var, ve bu iki sözlük, birleştirilmiş döndüren tek bir deyim yazmak istiyorum. Eğer bir dict-yer değiştirmek yerine bu sonucu Verdi update()
yöntemi ihtiyacım var ne olur.
>>> x = {'a':1, 'b': 2}
>>> y = {'b':10, 'c': 11}
>>> z = x.update(y)
>>> print z
None
>>> x
{'a': 1, 'b': 10, 'c': 11}
Nasıl z, x bu son birleştirilmiş dict alabilir miyim?
Ekstra-net (son-bir-galibiyet dict.update()
çatışma kullanım için arıyorum.)
CEVAP
2 EYLÜL 2008, Salı
Ne yapabilirim senin durumunda
z = dict(x.items() y.items())
Bu, istediğiniz gibi, koy son dict z
ve değeri b
düzgün tarafından geçersiz kılınan ikinci (y
) dict değeri:
>>> x = {'a':1, 'b': 2}
>>> y = {'b':10, 'c': 11}
>>> z = dict(x.items() y.items())
>>> z
{'a': 1, 'c': 11, 'b': 10}
Eğer Python 3 kullanıyorsanız, sadece biraz daha karmaşıktır. z
oluşturmak için:
>>> z = dict(list(x.items()) list(y.items()))
>>> z
{'a': 1, 'c': 11, 'b': 10}
Bunu Paylaş:
Nasıl Python fonksiyonu dekoratörler z...
Bir birleştirme çatışma ile karşılaştı...
Nasıl (şap) Python bir satır kaldırabi...
Nasıl iki JavaScript nesnelerin özelli...
Nasıl Python ile bir zaman gecikmesi y...