Это обычное использование случая, чтобы повторять список вместе со своим индексом. Традиционно это было сделано с помощью для петля, используя Диапазон и Лен Создать список показателей. Тогда элементы списка доступны с использованием [] Обозначения, как и так:
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”