В Python есть несколько способов организовать цикл по списку, как с индексами, так и без. И новички иногда запоминают один шаблон, с индексами, через range(), и используют его. Чем усложняют себе жизнь — такой код труднее читать, легче ошибиться и труднее исправить ошибку. Разберём, как по уму. Про это многие знают, но нельзя не упомянуть. Если вам нужно перебрать весь список, но не менять сам список, особенно значения в нём, скорее всего вам не нужен range(), можно просто так: products = ["Шоколад «Обниму и отпущу»",
"Мармеладки «Нога прилипла»",
"Чай «Прости за крепость»"]
for product in products:
print(product) Цикл for прекрасно перебирает списки. В переменную после for (product в данном случае) записываются по очереди все элементы списка, а не их индексы. Про это тоже многие знают — если вам нужно пройтись по списку с индексами, например, как-то поменять значения в списке, то используйте enumerate() вместо range(len(spisok)): odd_list = [1,