snacks = ['tomatos', 'lettuce', 'candles', 'books', 'cables', 'oreo', 'banana']
fsnack = 'oreo'
for index, snack in enumerate(snacks):
print("{}, {}".format(index, snack))
if(snack == fsnack): break
Задание также спрашивает, можете ли вы сделать это без перерыва. Это возможное решение:
try:
fsnack_index = snacks.index('oreo')
for i in range(0, fsnack_index+1):
print("{}, {}".format(i, snacks[i]))
except ValueError:
print("No oreos")
Мы используем функцию индекса, собственную для python, которая ищет местоположение индекса вашей закуски.
Затем мы можем использовать стандартный диапазон для l oop и просто распечатывать до появления oreo. Причина, по которой мы добавляем +1 к индексу, заключается в том, что верхняя граница диапазона для l oop является исключительной, а не включающей. Поэтому мы добавляем +1, чтобы удостовериться, что мы печатаем наш oreo.