Теорія:

Згадаємо черепашачу графіку
Проаналізуємо виконання програми: 
from turtle import *
for x in range(1,100,2):
       forward(x)
       left(90)

Під час кожного проходу циклу Черепашка малює лінію довжиною х пікселів і повертається вліво на 90°. Програма малює спіраль, оскільки кожен відрізок на 2 пікселі довший за попередній: перший відрізок має довжину 1 піксель, другий — 3, останній (50) — 99.
циклиа.PNG
Змінемо кут повороту на : left(92). Це викличе значні зміни у вигляді спіралі:
циклиб.PNG
Змінемо команду forward(x) на circle(x), яка малює коло радіусу х із поточної позиції:
for x in range(1,100,2):
      circle(x)
      left(90)

Отримаємо 4 набори кіл, оскільки після малювання кожного кола Черепашка повертається вліво на 90° .
циклив.PNG
Щоб намалювати n кіл, потрібно повертати Черепашку на 360/n градусів. Внесемо такі зміни до програми, щоб вона малювала 6 наборів кіл (360/6 = 60):
for x in range(1,100,2):
      circle(x)
      left(60)
циклиг.PNG
Як зробити наші спіралі різнокольоровими?
Створімо змінну-список з іменем colors і помістимо в цей список чотири кольори:
colors = [‘red’, ‘yellow’, ‘green’, ‘blue’]
Зверни увагу!
Список кольорів узято в квадратні дужки. Звернутися до значення зі списку
з номером х можна як до colors[x].
Наприклад, colors[0] = ‘red’, colors[3] = ‘blue’.
Як змусити Черепашку під час кожної ітерації циклу, коли х змінюється від 1 до 99, обирати одне з 4 значень списку?
Використаємо операцію % (остача від ділення). Під час обчислення виразу x%4 ми можемо отримати 4 значення остачі (0, 1, 2, 3), що відповідає номерам кольорів у списку colors.
Проаналізуй програму малювання квадратної спіралі. Крок циклу дорівнює 1, тому спіраль складатиметься зі 100 відрізків:
from turtle import *
colors = [‘red’,’yellow’,’green’,’blue’]
for x in range(100) :
       color(colors[x% 4])
       forward(x)
       left(90)
циклид.PNG
Таким чином, вносячи нескладні зміни до операторів малювання в тілі циклу for, ми можемо отримувати складні цікаві зображення.