Инициализировать словарь Python

Vaibhhav Khetarpal 30 Январь 2023 9 Июль 2021
  1. Используйте буквальный синтаксис для инициализации словаря в Python
  2. Используйте конструктор dict() для инициализации словаря Python
  3. Используйте метод fromkeys() для инициализации словаря Python
  4. Используйте список кортежей для инициализации словаря Python
  5. Используйте два списка для инициализации словаря Python
Инициализировать словарь Python

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

В версиях Python 3.6 и ниже словари были неупорядоченными. После внедрения Python 3.7+ словари упорядочены.

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

Используйте буквальный синтаксис для инициализации словаря в Python

Словарь можно создать и инициализировать с помощью фигурных скобок {}, он содержит ключи и значения.

В следующем коде используются литералы для инициализации словаря Python.

dict1 = {'X': 2, 'Y': 3, 'Z': 4}
print(dict1)

Выход:

{'X': 2, 'Y': 3, 'Z': 4}

Используйте конструктор dict() для инициализации словаря Python

Конструктор dict() может использоваться для инициализации словарей из аргументов ключевого слова, или отдельного словаря и его аргументов ключевого слова, или одиночной итерации пар ключ-значение.

Мы можем передать параметры в конструктор dict() и создать словарь.

Следующий код использует конструктор dict() для инициализации словаря в Python.

dict1 = dict(X=1, Y=2, Z=3)
print(dict1)

Выход:

{'X': 1, 'Y': 2, 'Z': 3}

Используйте метод fromkeys() для инициализации словаря Python

Функцию fromkeys() можно использовать, если все ключи имеют одинаковое значение.

Следующий код использует метод fromkeys() для инициализации словаря Python.

dict1 = dict.fromkeys(['X', 'Y', 'Z'], 0)
print(dict1)

Выход:

{'X': 0, 'Y': 0, 'Z': 0}

Словарь можно инициализировать значениями всех ключей как None, если в синтаксисе не указано конкретное значение.

dict1 = dict.fromkeys(['X', 'Y', 'Z'])
print(dict1)

Выход:

{'X': None, 'Y': None, 'Z': None}

Используйте список кортежей для инициализации словаря Python

Список кортежей также можно использовать для инициализации словаря в Python. Этот метод также использует конструктор dict() для реализации этого.

Кортеж - это упорядоченная и неизменяемая коллекция объектов. Его можно использовать для хранения нескольких товаров в одной переменной.

Списки похожи на кортежи, с той лишь разницей, что списки можно изменять, а кортежи этого не допускают.

Следующий код использует список кортежей для инициализации словаря в Python.

LOT = [("X" , 5), ("Y" , 6), ("Z" , 8)]
dict1 = dict(LOT)
print(dict1)

Выход:

{'X': 5, 'Y': 6, 'Z': 8}

Используйте два списка для инициализации словаря Python

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

Для реализации приведенных выше операторов мы можем использовать функцию zip(), которая выполняет итерацию по обоим заданным спискам параллельно.

Функция zip() создаст пару ключ-значение для всех записей параллельно и успешно создаст заархивированный объект, который затем может быть передан конструктору dict() для создания словаря.

В следующем коде используются два списка для инициализации словаря в Python.

if __name__ == '__main__':
    
    L1 = ["X", "Y", "Z"]
    L2 = [5,6,8]
    dict1 = dict( zip(L1,L2) )
    print(dict1)

Выход:

{'X': 5, 'Y': 6, 'Z': 8}

В этом случае L1 - это список, используемый в качестве ключей, а L2 - как список значений для инициализированного словаря.

Vaibhhav Khetarpal avatar Vaibhhav Khetarpal avatar

Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.

LinkedIn

Сопутствующая статья - Python Dictionary