Обход словаря циклом for
В этом примере посмотрим, как пройтись по словарю циклом for и получить ключи и значения. Покажем четыре способа: через items(), без него, через старый iteritems() для Python 2 и через раздельные keys() / values().
Что нужно знать
Перед изучением примера полезно понимать:
Python: цикл for — цикл
forСловари (Dictionary) в Python — словари
Пример 1. Ключ и значение через items()
dt = {'a': 'juice', 'b': 'grill', 'c': 'corn'}
for key, value in dt.items():
print(key, value)
Вывод
a juice
b grill
c corn
В заголовке цикла указываем две переменные —
keyиvalue— для итерируемого объектаdt.items(). Методitems()возвращает пары «ключ : значение».Печатаем
keyиvalue.
Пример 2. Ключ и значение без items()
dt = {'a': 'juice', 'b': 'grill', 'c': 'corn'}
for key in dt:
print(key, dt[key])
Вывод
a juice
b grill
c corn
Циклом
forпробегаем по словарю — переменнаяkeyпринимает значения ключей.Выводим ключ и значение по этому ключу —
dt[key].
Совет
Более «питоничный» способ — вариант из примера 1.
Пример 3. Через iteritems() (только Python 2)
dt = {'a': 'juice', 'b': 'grill', 'c': 'corn'}
for key, value in dt.iteritems():
print(key, value)
Вывод
a juice
b grill
c corn
Этот вариант работает только в Python 2.
В Python 2 вместо items() использовался iteritems().
Пример 4. Только ключи или только значения
dt = {'a': 'juice', 'b': 'grill', 'c': 'corn'}
for key in dt.keys():
print(key)
for value in dt.values():
print(value)
Вывод
a
b
c
juice
grill
corn
Если нужны только ключи или только значения — используй методы keys() и values() соответственно.