Для итерации по словарю в Python можно использовать несколько способов:
for key in my_dict:
или for key in my_dict.keys():
for value in my_dict.values():
for key, value in my_dict.items():
Метод .items()
возвращает пары (ключ, значение) в виде кортежей.
Итерироваться по словарю в Python можно несколькими способами, каждый из которых возвращает разные представления данных:
for
. Это приводит к итерации только по ключам словаря.
my_dict = {'a': 1, 'b': 2, 'c': 3}
for key in my_dict:
print(key, my_dict[key]) # Вывод: a 1, b 2, c 3
.values()
для получения итератора по значениям словаря.
my_dict = {'a': 1, 'b': 2, 'c': 3}
for value in my_dict.values():
print(value) # Вывод: 1, 2, 3
.items()
для получения итератора по парам "ключ-значение". Каждая пара возвращается в виде кортежа. Этот способ часто применяется, когда нужны и ключи, и значения.
my_dict = {'a': 1, 'b': 2, 'c': 3}
for key, value in my_dict.items():
print(key, value) # Вывод: a 1, b 2, c 3
enumerate
(редко, но возможно):enumerate
чаще используют со списками, его можно применить, если нужен индекс элемента. Обычно этот метод не является самым читаемым для словарей.
my_dict = {'a': 1, 'b': 2, 'c': 3}
for index, key in enumerate(my_dict):
print(index, key, my_dict[key]) # Вывод: 0 a 1, 1 b 2, 2 c 3
Выбор метода зависит от того, что именно нужно сделать в цикле:
my_dict.keys()
(но прямой перебор обычно более читаемый).my_dict.values()
.my_dict.items()
. Это самый гибкий и часто используемый способ.Важно помнить, что порядок ключей в словаре Python (начиная с версии 3.7) сохраняется в соответствии с порядком их добавления. В более ранних версиях порядок мог быть произвольным.