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

Приведи пример логической ошибки, из-за неучтенного фактора изменяемости

Распространённая ошибка — изменение списка во время итерации по нему.

python
numbers = [1, 2, 3, 4, 5]
for num in numbers:
    if num % 2 == 0:
        numbers.remove(num)
print(numbers)  # [1, 3, 5]? Нет! Может пропустить элементы.

Проблема: При удалении элемента список изменяется, и итератор сбивается, пропуская следующий элемент.

Решение: Итерировать по копии или использовать list comprehension:

python
numbers = [x for x in numbers if x % 2 != 0]  # или numbers[:] в цикле
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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