Задача

1/12

Словарь. Как создать?

Теория Нажмите, чтобы прочитать/скрыть

Тип данных "Словарь" (dict, ассоциативный массив)

Разберем еще один составной типа данных Python, называемый словарем, который похож на список в том смысле, что он представляет собой набор объектов.
Словари и списки имеют следующие характеристики:
  • оба изменяемы;
  • оба являются динамическими (могут увеличиваться и уменьшаться в размере по мере необходимости);
  • оба могут быть вложенными (список может содержать другой список, словарь может содержать другой словарь, словарь также может содержать список, и наоборот).
Словари отличаются от списков прежде всего тем, как осуществляется доступ к элементам:
  • доступ к элементам списка осуществляется по их положению в списке через индексацию;
  • доступ к элементам словаря осуществляется с помощью ключей.
Словари - это структура данных, реализованная в Python, более известная как ассоциативный массив. Словарь состоит из набора пар ключ-значение. Каждая пара "ключ-значение" сопоставляет ключ с соответствующим значением.

 

Создание словаря

Создать словарь можно заключив список пар ключ-значение, разделенный запятыми, в фигурные скобки ({}). Двоеточие (:) отделяет каждый ключ от связанного с ним значения:
d = {
    <key>: <value>,
    <key>: <value>,
      .
      .
      .
    <key>: <value>
}
P.S.: В записи выше, треугольные скобки <key> и <value> используются для обозначения местозаполнителей. Это значит, что вместо них вы должны подставить конкретные ключи и значения, которые хотите использовать в словаре.



Пример 1: Создание словаря при помощи фигурных скобок:

# Создание словаря с информацией о фруктах
fruits = {"яблоко": 5, "апельсин": 3, "банан": 7}

В этом примере ключами словаря являются названия фруктов ("яблоко", "апельсин", "банан"), а значениями - количество каждого фрукта.


Пример 2: Последовательное добавление элементов в пустой словарь:

# Создание пустого словаря и добавление элементов
employee = {}
employee["имя"] = "Иванов"
employee["возраст"] = 30
employee["подразделение"] = "Продажи"

Функция dict()

Можно создать словарь с помощью встроенной функции dict() функции. Аргумент dict() должен быть последовательностью пар ключ-значение. Для этого хорошо подходит список кортежей:

d = dict([
    (<key>, <value>),
    (<key>, <value),
      .
      .
      .
    (<key>, <value>)
]) 

Пример 3: Создание словаря из кортежей с помощью ключей и значений:
# Создание словаря из кортежей
pairs = [(1, 'один'), (2, 'два'), (3, 'три')]
dictionary = dict(pairs)
print(dictionary)  # Вывод: {1: 'один', 2: 'два', 3: 'три'}

Здесь мы создаем словарь из списка кортежей pairs, где первый элемент каждого кортежа будет ключом, а второй элемент - значением.


Пример 4: Создание словаря путем передачи аргументов ключей и значений:

# Создание словаря через передачу аргументов
dictionary = dict(яблоко=5, апельсин=3, банан=7)
print(dictionary)  # Вывод: {'яблоко': 5, 'апельсин': 3, 'банан': 7}

Здесь мы передаем аргументы с ключами и их соответствующими значениями, и функция dict() создает словарь на их основе.
 

Вывод элементов словаря

Вывести содержимое списка на экран можно просто командой print(). Записи в словаре отображаются в том порядке, в котором они были созданы.

# Создаем словарь 
my_dict = { "Alice": 30, "Bob": 25, "Charlie": 35 } 
# Выводим словарь 
print(my_dict)

Этот код выведет словарь в следующем формате:
{'Alice': 30, 'Bob': 25, 'Charlie': 35}
 

Задача

По имеющемуся списку названий стран и столиц, создайте словарь dict_country, в котором ключом будет являться название страны, а значением - столица. При создании словаря используйте тот же порядок, что и в списке ниже:
 
Страна Столица
Abkhazia Sukhum
Afghanistan Kabul
Albania Tirana
Algeria Algiers
Argentina Buenos Aires
Armenia Yerevan
Australia Canberra
Austria Vienna
Azerbaijan Baku
Bahamas Nassau