다음과 같이 두 개의 사전이 있습니다.클럽 사전은 어떻게?
d1 = {
"user1":{"key1":"val1","key2":"val2"},
"user2":{"key3":"val3","key4":"val4"}
}
d2 = { "admin":{
"user1":{"key5":"val5","key6":"val6"},
"user3":{"key7":"val7","key8":"val8"}
}
}
최종 사전은 다음과 같아야합니다
d3 = {
"user1":{"key1":"val1","key2":"val2","key5":"val5","key6":"val6"},
"user2":{"key3":"val3","key4":"val4"},
"user3":{"key7":"val7","key8":"val8"}
}
병합 개념은 여기에 적용되지 않습니다. 여기 좀 도와주세요.
나는 해결책을 시도했다 How to merge two Python dictionaries in a single expression?. 솔루션 아래 내가 필요한 것과 다릅니다.
이d3 = d1.copy()
for k, v in d2['admin'].iteritems():
d3.setdefault(k, {}).update(v)
는 출력을 제공합니다 : 예를 들어, D2의 내용으로 업데이트 한 후, 기본 빈 사전을 만드는 -
{'admin': {'user3': {'key8': 'val8', 'key7': 'val7'}, 'user1': {'key6': 'val6',
'key5': 'val5'}}, 'user2': {'key3': 'val3', 'key4': 'val4'}, 'user1': {'key2': '
val2', 'key1': 'val1'}}
가능한 중복 http://stackoverflow.com/questions/38987/how-can-i-merge-two-python- 단일 표현식 사전) – DeepSpace
중복 된 키의 경우 어떻게됩니까? – DeepSpace
@DeepSpace : 내가 최근에 게시 한 출력과 시도한 ID를 정확히 볼 수 있습니까? – User