Цикл while продолжает работать после выполнения условия
l = ['red','green','black']
ctr=0
while ctr <= (len(l)-1):
l.insert(ctr,'c')
ctr +=2
print(l)
>>> 'c', 'red', 'c', 'green', 'c', 'black']
Объясните, пожалуйста, почему цикл while продолжает работать после 2 итерации, хотя на третьей итерации ctr = 4 и больше чем (len(l) - 1) = 2 и вроде бы цикл должен завершиться. Спасибо!
всем спасибо! что длинна списка увеличивается, не догадался :)
Ответы (1 шт):
Автор решения: WilteRatenau
→ Ссылка
Цикл работает корректно. Происходит 3 итерации.
> Первая ctr = 0, длинна списка = 2 (потому что у вас длинна списка - 1)
> вторая ctr = 2, длинна списка = 3 (потому что у вас длинна списка - 1)
> третья ctr = 4, длинна списка = 4 (потому что у вас длинна списка - 1)
По этой причине у Вас список с требя "с"