Tôi có từ điển python dict1
với hơn 20.000 khóa và tôi muốn update
từ điển đó bằng một từ điển khác dict2
. Các bộ từ điển như thế này:chèn hoặc cập nhật các khóa trong từ điển python
dict1
key11=>[value11]
key12=>[value12]
...
...
keyxyz=>[value1x] //common key
...... so on
dict2
key21=>[value21]
key22=>[value22]
...
...
keyxyz=>[value2x] // common key
........ so on
Nếu tôi sử dụng
dict1.update(dict2)
sau đó các phím của dict1
đó cũng tương tự như phím của dict2
sẽ có giá trị của họ bị ghi đè bởi các giá trị của dict2
. Những gì tôi muốn là nếu một khóa đã có mặt trong dict1 thì giá trị của khóa đó trong dict2 phải được gắn vào giá trị của dict1. Vì vậy,
dict1.conditionalUpdate(dict2)
nên kết quả trong
dict1
key11=>[value11]
key12=>[value12]
key21=>[value21]
key22=>[value22]
...
...
keyxyz=>[value1x,value2x]
Một phương pháp ngây thơ sẽ được lặp lại trên phím của dict2
cho mỗi chủ chốt của dict1
và chèn hoặc phím cập nhật. Có phương pháp nào tốt hơn không? Liệu python có hỗ trợ cấu trúc dữ liệu tích hợp hỗ trợ loại chức năng này không?
Đây là giải pháp cho một câu hỏi tương tự đã được đăng. http://stackoverflow.com/questions/38987/how-can-i-merge-two-python-dictionaries-as-a-single-expression – ronyswag
@ronyswag Đó không phải là cùng một câu hỏi. –