Необходимо последовательно описать словами что происходит и почему с каждой из переменных при выполнении кода

for x in range(5):
    for y in range(x):
        print(x, y)

Эмм, не понял почему столько негатива, судя по сообщениям подумали что я бот или нейросеть. Я задал вопрос потому что в настоящее время я учусь по книге "Начинаем программировать" Тони Гэддиса, в книге сейчас изучаем вложенные циклы.

Если написать вот так:

for x in range(5):
    for y in range(5):
        print(x,y)

То смысл я понимаю - для каждой итерации X (внешний цикл) (от нуля до 4 включительно) y (внутренний цикл) "пробегает" значение от 0 до 4.

В дальнейшем я СПЕЦИАЛЬНО решил попробовать что будет если во внутренним цикле заменить диапазон с 5 на x. И вот тут уже ничего не понял.


Ответы (1 шт):

Автор решения: LooooZ

Сначала начинается цикл x, потом начинается цикл y

  1. x = 0, значит range(x) равен нулю, поэтому x 0 y 0 не выводиться(так как цикл повторяется 0 раз).
  2. x = 1, значит range(x) равен одному, поэтому выводиться x 1 y 0 (так как мы знаем что отсчёт идёт от нуля до записанной цифры)
  3. x = 2, значит range(x) равен двум, поэтому выводиться x 2 y 0, а затем x 2 y 1(так как цикл 2 раза повторяется, а отсчёт с нуля).
  4. x = 3, значит range(x) равен трём, поэтому выводиться x 3 y 0, а затем x 3 y 1, а после x 3 y 2(а потом цикл заканчивается, так как отсчёт с нуля, а цикл повторяется 3 раза)
  5. x = 4, а значит range(x) равен четырём, поэтому выводиться x 4 y 0 и т.д., пока не дойдёт до x 4 y 3

Всё, теперь ты знаешь как работает этот цикл.

→ Ссылка