How can I add new keys to a dictionary?

前端 未结 16 2663
梦毁少年i
梦毁少年i 2020-11-22 00:40

Is it possible to add a key to a Python dictionary after it has been created?

It doesn\'t seem to have an .add() method.

16条回答
  •  悲哀的现实
    2020-11-22 01:29

    I feel like consolidating info about Python dictionaries:

    Creating an empty dictionary

    data = {}
    # OR
    data = dict()
    

    Creating a dictionary with initial values

    data = {'a': 1, 'b': 2, 'c': 3}
    # OR
    data = dict(a=1, b=2, c=3)
    # OR
    data = {k: v for k, v in (('a', 1), ('b',2), ('c',3))}
    

    Inserting/Updating a single value

    data['a'] = 1  # Updates if 'a' exists, else adds 'a'
    # OR
    data.update({'a': 1})
    # OR
    data.update(dict(a=1))
    # OR
    data.update(a=1)
    

    Inserting/Updating multiple values

    data.update({'c':3,'d':4})  # Updates 'c' and adds 'd'
    

    Python 3.9+:

    The update operator |= now works for dictionaries:

    data |= {'c':3,'d':4}
    

    Creating a merged dictionary without modifying originals

    data3 = {}
    data3.update(data)  # Modifies data3, not data
    data3.update(data2)  # Modifies data3, not data2
    

    Python 3.5+:

    This uses a new feature called dictionary unpacking.

    data = {**data1, **data2, **data3}
    

    Python 3.9+:

    The merge operator | now works for dictionaries:

    data = data1 | {'c':3,'d':4}
    

    Deleting items in dictionary

    del data[key]  # Removes specific element in a dictionary
    data.pop(key)  # Removes the key & returns the value
    data.clear()  # Clears entire dictionary
    

    Check if a key is already in dictionary

    key in data
    

    Iterate through pairs in a dictionary

    for key in data: # Iterates just through the keys, ignoring the values
    for key, value in d.items(): # Iterates through the pairs
    for key in d.keys(): # Iterates just through key, ignoring the values
    for value in d.values(): # Iterates just through value, ignoring the keys
    

    Create a dictionary from two lists

    data = dict(zip(list_with_keys, list_with_values))
    

提交回复
热议问题