Встречается на собеседованиях • сегодня

Что будет с циклом for если проводить итерацию по списку

При итерации по списку цикл for последовательно перебирает элементы списка от первого до последнего. Если во время итерации изменять список (добавлять/удалять элементы), это может привести к неожиданному поведению.

Пример:

python
lst = [1, 2, 3, 4]
for item in lst:
    if item == 2:
        lst.remove(item)  # Изменяем список во время итерации
    print(item)

Выведет: 1, 2, 4 (элемент 3 будет пропущен, так как после удаления 2 элементы сдвинутся)

Рекомендуется:

  1. Итерироваться по копии списка (for item in lst.copy())
  2. Использовать списковые включения для фильтрации
  3. Создавать новый список вместо изменения исходного
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы