Это обычное использование случая, чтобы повторять список вместе со своим индексом. Традиционно это было сделано с помощью для
петля, используя Диапазон
и Лен
Создать список показателей. Тогда элементы списка доступны с использованием []
Обозначения, как и так:
shopping_cart = ['apple', 'cereal', 'banana', 'cola'] for i in range(len(shopping_cart)): print(f'{i}: {shopping_cart[i]}') # 0 apple # 1 cereal # 2 banana # 3 cola
Но это решение очень императивно, напоминает старые языки программирования. У нас есть лучший, больше пифитонного решения.
Используя перечислять
Ключевое слово, мы можем получить итератор, который уже дает как элемент, так и индекс списка. Используя это, мы можем упростить вышеуказанный код следующим образом:
shopping_cart = ['apple', 'cereal', 'banana', 'cola'] for i, item in enumerate(shopping_cart): print(f'{i}: {item}') # 0 apple # 1 cereal # 2 banana # 3 cola
Я лично думаю, что это решение является чище, более элегантным и проще, чтобы написать.
Привет! Меня зовут Адриан. Я инженер-программист, который любит писать. Если вам понравилось, почему бы не Следуйте за я в твиттере ?
Оригинал: “https://dev.to/adrianmarkperea/better-python-for-loops-using-enumerate-4630”