Рубрики
Без рубрики

Питон: Как добавить ключ в словарь

Давайте добавим новые ключи в словарь Python. Мы добавим один ключ и несколько ключей с помощью функции update (), оператора слияния | и оператора обновления |=

Автор оригинала: Naazneen Jatu.

Вступление

Словарь в Python-это набор элементов, которые хранят данные в виде пар ключ-значение. Мы можем получить доступ к элементам словаря и манипулировать ими на основе их ключа. Словари изменчивы и позволяют добавлять в них новые элементы.

Самый быстрый способ добавить один элемент в словарь-это использовать ссылку на индекс словаря с новым ключом и присвоить ему значение. Например, мы добавляем новую пару ключ-значение, как это:

snacks['chocolate'] = 5

Python также позволяет добавлять несколько элементов в словари. В этом уроке мы рассмотрим как добавить ключи в словарь в Python .

Добавить ключ в словарь Python

Существует несколько способов добавить новую пару ключ-значение в существующий словарь. Давайте рассмотрим несколько распространенных способов сделать это.

Добавить ключ со значением

Мы можем добавить новый ключ в словарь, присвоив ему значение. Если ключ уже присутствует, он перезаписывает значение, на которое указывает. Ключ должен быть записан в подстрочной нотации к словарю следующим образом:

my_dictionary[new_key] = new_value

Эта пара ключ-значение будет добавлена в словарь. Если вы используете Python 3.6 или более позднюю версию, он будет добавлен в качестве последнего элемента словаря.

Давайте создадим словарь, а затем добавим новую пару ключ-значение с помощью этого подхода:

squares = {1: 1, 2: 4, 3: 9}
squares[4] = 16 # Adding new key-value pair
print(squares)

Это приведет к:

{1: 1, 2: 4, 3: 9, 4: 16}

Добавить ключ в Словарь Без значения

Если вы просто хотите добавить ключ без значения, вы можете просто поставить None вместо значения с помощью любого из методов, описанных в этой статье:

squares = {1: 1, 2: 4, 3: 9}
squares['x'] = None # Adding new key without value
print(squares)

Это приводит к:

{1: 1, 2: 4, 3: 9, 'x': None}

Добавление нескольких пар Ключ-значение с обновлением()

В Python мы можем добавить несколько пар ключ-значение в существующий словарь. Это достигается с помощью метода update () . Этот метод принимает аргумент типа dict или любую итерацию длиной два типа ((key1, value1),) и обновляет словарь новыми парами ключ-значение.

Если ключ уже присутствует в словаре, он перезаписывается новым значением.

Ключи также могут быть переданы в качестве аргументов ключевого слова этому методу с соответствующими значениями, например dictionary.update(new_key=new_value) .

Примечание: Это, пожалуй, самый популярный метод добавления новых ключей и значений в словарь.

Давайте используем метод update() для добавления нескольких пар ключ-значение в словарь:

rainbow = {'red': 1}

# Update by passing dictionary 
new_key_values_dict = {'orange': 2, 'yellow': 3}
rainbow.update(new_key_values_dict)
print("update by passing dictionary")
print(rainbow)

# Update by passing iterables
new_key_values_itr = (('green',4), ('blue',5))
rainbow.update(new_key_values_itr)
print("update by passing iterables")
print(rainbow)

# Update using keyword arguments
rainbow.update(indigo=6, violet=7)
print("update using keyword arguments")
print(rainbow)

Запуск этого кода приведет к следующему результату:

update by passing dictionary
{'red': 1, 'orange': 2, 'yellow': 3}
update by passing iterables
{'red': 1, 'orange': 2, 'yellow': 3, 'green': 4, 'blue': 5}
update using keyword arguments
{'red': 1, 'orange': 2, 'yellow': 3, 'green': 4, 'blue': 5, 'indigo': 6, 'violet': 7}

Использование оператора слияния (Python 3.9+)

Начиная с версии Python 3.9, операторы Merge ( ) и Update ( | = ) были добавлены во встроенный класс dictionary .

Это очень удобные методы для добавления нескольких пар ключ-значение в словарь. Оператор Merge ( | ) создает новый словарь с ключами и значениями обоих заданных словарей. Затем мы можем присвоить этот результат новому словарю.

В то время как оператор Update( |= ) добавляет пары ключ-значение второго словаря в первый словарь. Таким образом, существующий словарь обновляется несколькими парами ключ-значение из другого словаря.

Вот пример использования операторов Merge ( ) и Update ( | = ) для добавления новых ключей в словарь:

colors_set1 = {'red': 1, 'orange': 2, 'yellow': 3}
colors_set2 = {'green': 4, 'blue': 5, 'indigo': 6, 'violet': 7}

# Merge operator
rainbow = colors_set1 | colors_set2
print("using merge:", rainbow)

# Update operator
colors_set1 |= colors_set2
print("using update:", colors_set1)

Этот код выдаст следующий вывод на интерпретаторе Python(3.9+) :

using merge: {'red': 1, 'orange': 2, 'yellow': 3, 'green': 4, 'blue': 5, 'indigo': 6, 'violet': 7}
using update: {'red': 1, 'orange': 2, 'yellow': 3, 'green': 4, 'blue': 5, 'indigo': 6, 'violet': 7}

Вывод

В этом уроке мы узнали, как добавить новый ключ в словарь. Сначала мы добавили пару ключ-значение с помощью подстрочной нотации – мы добавили ключ в словарь, присвоив ему значение. Затем мы рассмотрели метод update() для добавления нескольких пар ключ-значение в словарь. Мы также использовали метод update() с параметрами словаря типов, кортежа и аргументов ключевых слов. Наконец, мы исследовали операторы слияния и обновления, доступные начиная с Python версии 3.9 и далее.

Метод update() словаря оказывается самым популярным способом добавления новых ключей в существующий словарь.