1. Введение
В программировании итерация означает обход элементов в элементе. И когда вы выполняете итерацию, вы посещаете различные элементы в элементе, выполняющем указанное действие. Предположим, у вас есть мешок с шарами, и вы хотите перебирать шары, вы посещаете каждый шар в сумке и выполняете определенное действие. Это в основном то, что означает итерация.
Итерация по словарю означает переход по элементам словаря. Но прежде чем продолжить, что такое словарь в Python? Словарь — это неупорядоченное хранилище значений ключей. Ключи в словаре уникальны, а значения могут быть уникальными или нет. С помощью словарей вы можете выбрать циклическое переключение между ключами, значениями или обоими ключами и значениями одновременно.
Когда вы перебираете словарь по ключу, это означает, что вы перебираете ключи в словаре один за другим, а когда вы перебираете значения в словаре, вы переходите от одного значения к другому. То же самое с итерацией по паре ключ-значение.
Итак, давайте начнем с рассмотрения различных способов перебора словаря.
  2. Перебирайте ключи 
Чтобы перебрать словарь по ключам, рассмотрим следующий пример.
| 1 | student_details  ={'Name': 'AbdulBasit Kabir', 'Age': 32, 'Location': 'Abuja, Nigeria'} | 
Если вы непосредственно запускаете цикл for в словаре, вы будете перебирать ключи в словаре. Например, рассмотрим следующее:
| 1 2 | fordetails instudent_details:    print(details) | 
И результат будет следующим:
| 1 2 3 | NameAgeLocation | 
 Вы получите тот же результат, если будете явно запускать цикл for над ключами словаря.  Чтобы получить ключи словаря, вы просто используете метод keys() .  Рассмотрим следующий пример: 
| 1 2 | fordetails instudent_details.keys():    print(details) | 
И результат будет следующим:
| 1 2 3 | NameAgeLocation | 
  Вы также можете быть заинтересованы в переборе ключей в отсортированном порядке.  Таким образом, все, что вам нужно, это вызвать отсортированный метод в Python для сортировки ключей перед началом итерации.  Рассмотрим, когда мы сортируем ключи в student_details перед тем, как выполнить итерацию следующим образом: 
| 1 2 | fordetails insorted(student_details.keys()):    print(details) | 
Выходные данные в этом случае будут отсортированы по алфавиту
| 1 2 3 | AgeLocationName | 
  3. Перебор значений 
Помните, когда мы говорили, словари состоят из неупорядоченных ключей и значений. Мы научились перебирать ключи. Теперь следующий вопрос, который нужно задать, — можем ли мы перебрать значения. И ответ ДА.
Чтобы перебрать значения в словаре, используя цикл for, мы делаем следующее:
| 1 2 | forvalues instudent_details.values():    print(values) | 
И вывод следующий:
| 1 2 3 | AbdulBasit Kabir32Abuja, Nigeria | 
  Если вы хотите отсортировать значения, вы можете вызвать отсортированный метод непосредственно перед началом печати.  Однако, поскольку наши значения не все строки, нам нужно передать параметр в метод, sorted следующим образом: 
| 1 2 | forvalues insorted(student_details.values(), key=str):    print(values) | 
И вывод будет следующим:
| 1 2 3 | 32AbdulBasit KabirAbuja, Nigeria | 
  4. Перебирайте ключи и значения 
  Иногда вам нужно выполнять итерации не только по ключам или значениям, но и по обоим одновременно.  Даже в этой ситуации Python помог вам.  Метод items() вызывается в словаре, так что он возвращает ключ и значение во время каждой итерации, и с этим вы можете выполнить итерацию по нему следующим образом: 
| 1 2 | foritems instudent_details.items():    print(items) | 
И вывод будет следующим:
| 1 2 3 | ('Name', 'AbdulBasit Kabir')('Age', 32)('Location', 'Abuja, Nigeria') | 
Чтобы возвращать ключи и значения отдельно в каждой итерации, мы можем следовать этому шаблону:
| 1 2 3 | forkey, value instudent_details.items():    print('Key: ', key)    print('Value: ', value) | 
И вывод будет:
| 1 2 3 4 5 6 | Key:  NameValue:  AbdulBasit KabirKey:  AgeValue:  32Key:  LocationValue:  Abuja, Nigeria | 
И если вы хотите распечатать пару ключ-значение, но отсортировать по ключу, вы можете попробовать следующее:
| 1 2 3 | forkey, value insorted(student_details.items()):    print('Key: ', key)    print('Value: ', value) | 
И вывод будет следующим:
| 1 2 3 4 5 6 | Key:  AgeValue:  32Key:  LocationValue:  Abuja, NigeriaKey:  NameValue:  AbdulBasit Kabir | 
5. Итерация Python по словарям — Заключение
В этом примере мы узнали, что означает повторять в программировании, а также как перебирать словари в Python. Мы немного узнали о том, что такое словари и как мы можем перебирать их по ключу, значению и ключу или значению.
6. Загрузите исходный код
Это был пример того, как перебирать словари в Python
Вы можете скачать полный исходный код этого примера здесь: Python Iterate over dictionaries Пример