Python предоставляет различные способы перебора словаря Python с индексом для доступа к ключам и значениям.
Словарь используется для хранения данных в виде пары ключ-значение. Начиная с версии Python 3.7, словари упорядочены так, что мы можем получить доступ к ключам словаря по индексу.
- 1. Перебор словарей с использованием циклов for
- 2. С использованием функции enumerate()
- 3. С помощью метода items()
- 4. С использованием функции sorted()
- Заключение
1. Перебор словарей с использованием циклов for
Самый простой способ перебора словаря в Python — это цикл for. Цикл используется для перебора ключей словаря, и мы можем получить доступ к соответствующим значениям и индексу.
Вот пример того, как перебирать словарь в Python с ключом, используя цикл for:
USA_states = { "New York": "Albany", "California": "Sacramento", "Ohio": "Columbus", "Texas": "Austin", "Washington": "Olympia" } index = 0 for key in USA_states: value = USA_states[key] print(f"Index: {index}, Key: {key}, Value: {value}") index += 1
Вывод: здесь мы создали переменную с именем index и установили значение 0. Она будет действовать как наш индекс для словаря Python.
Каждый раз, когда мы перебираем ключ словаря Python, мы получаем соответствующие значения с индексом, увеличивая индекс на 1.
Index: 0, Key: New York, Value: Albany Index: 1, Key: California, Value: Sacramento Index: 2, Key: Ohio, Value: Columbus Index: 3, Key: Texas, Value: Austin Index: 4, Key: Washington, Value: Olympia
После запуска кода в Pycharm результат отображается на снимке экрана ниже.
2. С использованием функции enumerate()
Функция enumerate() в Python используется для перебора последовательности по индексу.
Его синтаксис:
enumerate(iterable, start=0)
Требуется два аргумента:
- iterable: имя итерации, которую нам нужно перебрать в Python.
- start: это счетчик, с которого начнется индексация.
Функция enumerate() возвращает пару счетчика и элемента из итерируемого объекта.
Вот как мы можем использовать функцию enumerate для перебора словаря Python с индексом:
USA_companies = { "Amazon": 299.28, "Apple": 297.51, "Google": 281.38, "Microsoft": 191.57, "Walmart": 113.78 } for index, key in enumerate(USA_companies): print('Index::', index, ' Key::', key)
Вывод: по умолчанию стартовый параметр функции перечисления равен 0.
Index:: 0 Key:: Amazon Index:: 1 Key:: Apple Index:: 2 Key:: Google Index:: 3 Key:: Microsoft Index:: 4 Key:: Walmart
Ниже приведен снимок экрана, на котором показаны выходные данные после реализации кода в редакторе Pycharm.
3. С помощью метода items()
Метод items() словаря Python возвращает пару ключ-значение, которую можно использовать в цикле для перебора ключей и значений.
Но для индекса нам нужно преобразовать возвращаемое значение метода items() в список, а затем выполнить итерацию по списку в Python.
Пример:
US_States = { "Alaska": "AK", "California": "CA", "Florida": "FL", "Hawaii": "FL", "New York": "NY", "Texas": "TX" } Sates_data = list(US_States.items()) for i in range(len(Sates_data)): key, value = Sates_data[i] print(f'Index: {i}, Key: {key}, Value: {value}')
Выход:
Index: 0, Key: Alaska, Value: AK Index: 1, Key: California, Value: CA Index: 2, Key: Florida, Value: FL Index: 3, Key: Hawaii, Value: FL Index: 4, Key: New York, Value: NY Index: 5, Key: Texas, Value: TX
На снимке экрана ниже представлен результат, полученный после выполнения кода в редакторе Pycharm.
4. С использованием функции sorted()
Если мы хотим отсортировать словарь в Python и перебрать его по индексу, мы можем использовать функцию sorted().
Функция sorted() возвращает список отсортированных значений в Python в порядке возрастания.
Пример:
CEO_dict = { "Carnegie Steel Company": "Andrew Carnegie", "Ford Motor Company": "Henry Ford", "Oprah Winfrey Network": "Oprah Winfrey", "Microsoft": "Bill Gates", "Google": "Larry Page" } sorted_keys = sorted(CEO_dict.keys()) for i in range(len(sorted_keys)): key = sorted_keys[i] value = CEO_dict[key] print(f'Index: {i}, Key: {key}, Value: {value}')
Здесь мы передали список ключей функции sorted() в Python, чтобы получить отсортированный список.
sorted(CEO_dict.keys())
Выход:
Index: 0, Key: Carnegie Steel Company, Value: Andrew Carnegie Index: 1, Key: Ford Motor Company, Value: Henry Ford Index: 2, Key: Google, Value: Larry Page Index: 3, Key: Microsoft, Value: Bill Gates Index: 4, Key: Oprah Winfrey Network, Value: Oprah Winfrey
Полученный снимок экрана представлен ниже после реализации кода в редакторе Pycharm.
Заключение
В этой статье подробно объясняется «Как перебирать словарь в Python с индексом» несколькими способами. Независимо от того, используем ли мы простой цикл for, функцию enumerate(), методы items() или функцию sorted() для отсортированного словаря, понимание этих методов позволяет программистам эффективно работать со словарями в Python.