Словари в Python
Словари в Python | |
Тематические порталы Портал Программистов • Портал Python
|
В этой статье Вы узнаете, что такое словари в Python, которые позволяют соединять части различных и связанных между собой данных, и далее, как получить доступ к ним, как сохранять информацию и как потом изменить её непосредственно в словарях.
Так как словари могут хранить практически безграничный объем данных, мы покажем, как перебирать эти данные и работать с ними. Кроме того, вы научитесь вкладывать словари в списки, списки в словари и даже словари в другие словари.
Понимание словарей позволяет более точно моделировать различные объекты реального мира. Вы сможете создать словарь, представляющий информацию о человеке, а затем хранить эти данные столько, сколько необходимо. Например, можно сохранить имя, возраст, местоположение, профессию и любые другие данные человека, которого вы можете описать. Вы сможете хранить любые два вида информации, которые могут быть сопоставлены, например, список слов и их значений, список имен людей и их любимых занятий, список гор и их возвышенностей и так далее.
Создание простого словаря
Рассмотрим игру с участием инопланетян, которые могут иметь разные цвета и баллы. Этот простой словарь хранит информацию о конкретном пришельце:
alien_0 = {'color': 'green', 'points': 5}
print(alien_0['color'])
print(alien_0['points'])
В словаре alien_0
хранится цвет и значение инопланетянина. Две указанные функции print()
выводят эту информацию соответствующим образом:
green 5
Как и в большинстве новых концепций программирования, использование словарей требует практики. Немного поработав со словарями, вы скоро увидите, насколько эффективно они могут отображать реальные ситуации.
Отображение данных словаря
Словарь в Python представляет собой набор из пар "ключ-значение". Каждый ключ связан со значением, и вы можете использовать ключ для доступа к значению, связанному с этим ключом. Значением ключа может быть число, строка, список или даже другой словарь.
Фактически, вы можете использовать любой объект, который вы можете создать в Python, как значение в словаре. В Python данные словаря заключены в фигурные скобки "{}", с последовательностью данных "ключ-значение" внутри этих скобок, как показано в предыдущем примере:
alien_0 = {'color': 'green', 'points': 5}
Пара "ключ-значение" - это набор данных, связанных друг с другом. Когда вы предоставляете ключ, Python возвращает значение, связанное с ним. Каждый ключ связан с его значением через двоеточие, а отдельные пары "ключ-значение" разделяются запятыми. Вы можете хранить в словаре столько пар "ключ-значение", сколько хотите. Самый простой словарь имеет ровно одну пару ключ-значение, как показано в этой версии словаря alien_0
:
alien_0 = {'color': 'green'}
В этом словаре хранится одна информация о пришельце (alien_0), а именно цвет пришельца. Строка 'color' является ключом в этом словаре, и ее ассоциированное значение - 'green'.
Доступ к значениям в словаре
Чтобы получить значение, связанное с ключом, задайте имя словаря, а затем поместите ключ в набор квадратных скобок, как показано ниже:
alien_0 = {'color': 'green'}
print(alien_0['color'])
Это возвращает значение, связанное с ключом 'color' из словаря "alien_0
":
green
Можно иметь неограниченное количество пар "ключ-значение" в словаре. Например, вот оригинальный словарь alien_0
с двумя парами "ключ-значение":
alien_0 = {'color': 'green', 'points': 5}
Теперь можно получить доступ либо к цвету, либо к значению "очков" alien_0
. Например, если игрок сбивает этого пришельца в игре, можно посмотреть, сколько очков можно заработать, используя следующий код:
alien_0 = {'color': 'green', 'points': 5}
new_points = alien_0['points']
print("You just earned " + str(new_points) + " points!")
Как только словарь составлен, код извлекает значение, связанное с ключом 'points' из словаря. Это значение затем сохраняется в переменной new_points. Строка преобразует это целочисленное значение в строку и выводит утверждение о том, сколько очков игрок только что заработал:
You just earned 5 points!
Этот код, например, можно выводить как только Вы сбиваете инопланетянина в нашей воображаемой игре, которую позже мы создадим.
Примечание
В этой статье мы познакомились, что такое словари в Python, каким образом можно в них хранить данные. Для продолжение этой темы читайте статью о том, как можно работать со словарями, удалять и добавлять в них данные. Если же есть вопросы по изложенному выше материалу, то пишите на странице обсуждения.