В каком случае обычно уместнее выбрать цикл while, а не for?

AКогда нужно пройти по всем элементам списка users.
BКогда количество итераций заранее неизвестно и цикл должен завершиться по условию, которое обновляется внутри while.
CКогда нужно параллельно пройти по двум спискам — для этого используют zip() в for.
DКогда нужно пропустить текущую итерацию — для этого используют continue.
Правильный ответ. for удобен для перебора последовательностей, а while — для повторения «пока условие истинно».

Разбор

Если вы перебираете известную коллекцию (список, словарь, строку), обычно выбирают for. Если же цикл должен завершаться по условию, которое меняется внутри цикла (например, «пока не встретили sentinel» или «пока счётчик не достиг порога»), то логичнее while.

Проверь себя · 1/3разбор после ответа
Есть списки пользователей и трат: users = ['u1', 'u2'] и spends = [100, 200]. После d = {}, в цикле for u, s in zip(users, spends): выполняется d[u] = s. Чему равно d['u2']?
Тренировать Python в Telegram

Ещё вопросы по теме «Циклы и условия»