“Wie man zwei Wörterbücher in Python zusammenfasst” Code-Antworten

Python merge Wörterbücher

# Python >= 3.5:
def merge_dictionaries(a, b):
   return {**a, **b}
  
# else:
def merge_dictionaries(a, b):
    c = a.copy()   # make a copy of a 
    c.update(b)    # modify keys and values of a with the b ones
    return c

a = { 'x': 1, 'y': 2}
b = { 'y': 3, 'z': 4}
print(merge_dictionaries(a, b)) 		# {'y': 3, 'x': 1, 'z': 4}
VasteMonde

Python verschmelzen verschachtelte Wörterbücher

# Example usage:
# Say you have the following dictionaries and want to merge dict_b into dict_a
dict_a = {"ABC": {"DE": {"F": "G"}}}
dict_b = {"ABC": {"DE": {"H": "I"}, "JKL": "M"}} 

def merge_nested_dictionaries(dict_a, dict_b, path=None):
    """
    recursive function for merging dict_b into dict_a
    """
    if path is None:
        path = []
    for key in dict_b:
        if key in dict_a:
            if isinstance(dict_a[key], dict) and isinstance(dict_b[key], dict):
                merge_nested_dictionaries(dict_a[key], dict_b[key], path + [str(key)])
            # if the b dictionary matches the a dictionary from here on, skip adding it
            elif dict_a[key] == dict_b[key]:
                pass
            # if the same series of keys lead to different terminal values in
            # each dictionary, the dictionaries can't be merged unambiguously
            else:
                raise Exception('Conflict at %s' % '.'.join(path + [str(key)]))
        # if the key isn't in a, add the rest of the b dictionary to a at this point
        else:
            dict_a[key] = dict_b[key]
    return dict_a

# running:
merge_nested_dictionaries(dict_a, dict_b)
# returns:
{'ABC': {'DE': {'F': 'G', 'H': 'I'}, 'JKL': 'M'}}
Charles-Alexandre Roy

Python merge Wörterbücher

dict1 = {'color': 'blue', 'shape': 'square'}
dict2 = {'color': 'red', 'edges': 4}

dict1.update(dict2) #if a key exists in both, it takes the value of the second dict
# dict1 = {'color': 'red', 'shape': 'square', 'edges': 4}
# dict2 is left unchanged
MitroGr

Wie man zwei Wörterbücher in Python zusammenfasst

>>> x = {'a': 1, 'b': 2}
>>> y = {'b': 10, 'c': 11}
>>> z = {**x, **y} #In Python 3.5 or greater only
>>> print(z)
{'a': 1, 'b': 10, 'c': 11}
MrStonkus

Wie man zwei Wörterbücher mit denselben Schlüssel in Python zusammenfasst

from collections import defaultdict

d1 = {1: 2, 3: 4}
d2 = {1: 6, 3: 7}

dd = defaultdict(list)

for d in (d1, d2): # you can list as many input dicts as you want here
    for key, value in d.items():
        dd[key].append(value)

print(dd)
Prickly Peacock

Python schließen Sie sich DICT an

def mergeDict(dict1, dict2):
   ''' Merge dictionaries and keep values of common keys in list'''
   dict3 = {**dict1, **dict2}
   for key, value in dict3.items():
       if key in dict1 and key in dict2:
               dict3[key] = [value , dict1[key]]
 
   return dict3
 
# Merge dictionaries and add values of common keys in a list
dict3 = mergeDict(dict1, dict2)
 
print('Dictionary 3 :')
print(dict3)
rebellion

Ähnliche Antworten wie “Wie man zwei Wörterbücher in Python zusammenfasst”

Fragen ähnlich wie “Wie man zwei Wörterbücher in Python zusammenfasst”

Weitere verwandte Antworten zu “Wie man zwei Wörterbücher in Python zusammenfasst” auf Python

Durchsuchen Sie beliebte Code-Antworten nach Sprache

Durchsuchen Sie andere Codesprachen