Предыдущий урок: Множества (set)
Словарь — неупорядоченная последовательность, гибким к изменениям и индексированным. В Python словари пишутся в фигурных скобках, и состоят из ключей и значений.
Создадим и выведем словарь:
thisdict = {
"brand": "Ford",
"model": "Mustang",
"year": 1964
}
print(thisdict)
Вывод:
{'brand': 'Ford', 'model': 'Mustang', 'year': 1964}
Доступ к элементам
Вы можете получить доступ к элементам словаря ссылаясь на его ключевое название.
Получим значение по ключу “model” :
x = thisdict["model"]
Существует так же метод под названием get()
который даст вам тот же результат.
x = thisdict.get("model")
Изменить значение
Вы можете поменять значение указанного элемента ссылаясь на ключевое название.
Поменяем “year” на “2018”:
thisdict = {
"brand": "Ford",
"model": "Mustang",
"year": 1964
}
thisdict["year"] = 2018
print(thisdict)
Вывод:
{'brand': 'Ford', 'model': 'Mustang', 'year': 2018}
Цикл for по словарю
При проходе по словарю вы получите его ключи, но так же есть методы для возврата значений.
Выведем один за другим все ключи словаря:
for x in thisdict:
print(x)
Вывод:
brand
model
year
Выведем значения словаря, один за одним:
for x in thisdict:
print(thisdict[x])
Вывод:
Ford
Mustang
1964
Вы так же можете использовать функцию values()
для возврата значений словаря:
for x in thisdict.values():
print(x)
Вывод:
Ford
Mustang
1964
Пройдем по ключам и значениям, используя функцию items()
:
for x, y in thisdict.items():
print(x, y)
Вывод:
brand Ford
model Mustang
year 1964
Длина словаря
Для того, чтобы определить сколько элементов есть в словаре, используйте метод len()
.
print(len(thisdict))
Вывод:
3
Добавление элементов
Добавление элементов в словарь выполняется с помощью нового ключа:
thisdict = {
"brand": "Ford",
"model": "Mustang",
"year": 1964
}
thisdict["color"] = "red"
print(thisdict)
Вывод:
{'brand': 'Ford', 'model': 'Mustang', 'year': 1964, 'color': 'red'}
Удаление элементов
Существует несколько методов удаления элементов из словаря.
Метод pop()
удаляет элемент по ключу и возвращает его:
thisdict = {
"brand": "Ford",
"model": "Mustang",
"year": 1964
}
thisdict.pop("model")
Метод popitem()
удаляет последний элемент:
thisdict = {
"brand": "Ford",
"model": "Mustang",
"year": 1964
}
thisdict.popitem()
Ключевое слово del
удаляет элемент по ключу:
thisdict = {
"brand": "Ford",
"model": "Mustang",
"year": 1964
}
del thisdict["model"]
print(thisdict)
Вывод:
{'brand': 'Ford', 'year': 1964}
Ключевое слово del
может так же удалить полностью весь словарь:
thisdict = {
"brand": "Ford",
"model": "Mustang",
"year": 1964
}
del thisdict
print(thisdict) #это вызывает ошибку, так как "thisdict" больше не существует.
Ключевое слово clear()
очищает словарь:
thisdict = {
"brand": "Ford",
"model": "Mustang",
"year": 1964
}
thisdict.clear()
print(thisdict)
Вывод:
{}
Конструктор dict()
Вы так же можете использовать конструктор dict()
для создания нового словаря.
thisdict = dict(brand="Ford", model="Mustang", year=1964)
# обратите внимание, ключевые слова не являются строками
# обратите внимание на использование "рвно", вместо двоеточия для задания
print(thisdict)
Вывод:
{'brand': 'Ford', 'model': 'Mustang', 'year': 1964}
Методы словаря
В Python существует набор встроенных методов, с помощью которых вы можете работать со словарями.
Метод | Значение |
---|---|
clear() | Удаляет все элементы из словаря |
copy() | Делает копию словаря |
fromkeys() | Возвращает словарь с указанными ключами и значениями |
get() | Возвращает значение по ключу |
items() | Возвращает список, содержащий tuple для каждой пары ключ-значение |
keys() | Возвращает список, содержащий ключи словаря |
pop() | Удаляет элементы по ключу |
popitem() | Удаляет последнюю пару ключа со значением |
setdefault() | Задает значение по ключу. Если ключа нет в словаре, добавляет его с указанным значением или None |
update() | Обновляет словарь, добавляя пары ключ-значение |
values() | Возвращает список всех значений в словаре |
Далее: Условные выражения и конструкция if