Глава 10 · Немного автоматизации!

Сетка фигур

Тот же паттерн «строки × столбцы», что и в таблице умножения — только теперь он рисует, а не печатает числа.

Вложенные циклы как настоящая графика

Мы уже видели вложенные циклы на числах (таблица умножения) и на тексте (буквы внутри слов). Тот же самый паттерн «строки × столбцы» — основа для сеточного искусства:

setka_figur.py
shag = 60
for row in range(5):
    for col in range(5):
        x = -140 + col * shag
        y = -140 + row * shag
        artist.goto(x, y)
        artist.dot(16, '#5B24F9')
setka_figur.py
import turtle

screen = turtle.Screen()
screen.setup(width=380, height=380)
artist = turtle.Turtle()
artist.speed(0)
artist.hideturtle()
artist.penup()

shag = 60
for row in range(5):
    for col in range(5):
        x = -140 + col * shag
        y = -140 + row * shag
        artist.goto(x, y)
        artist.dot(16, "#5B24F9")

screen.exitonclick()
Результат выполнения
Сетка из точек 5 на 5
5 × 5 = 25 точек — внешний цикл по строкам, внутренний по столбцам
Тот же формула, что и в таблице умножения
row и col снова пробегают весь диапазон независимо друг от друга — общее число нарисованных точек равно 5 * 5 = 25, ровно как мы считали формулой «строки × столбцы» на странице про вложенные циклы.
★★ Самостоятельная задача
Сетка фигур вместо точек

Замените artist.dot(...) на маленький квадрат (ещё один, третий, вложенный цикл на 4 стороны) — получится сетка из маленьких квадратов вместо точек.

Практика: сетка фигур на вложенных циклах
Модуль turtle открывает нативное окно Python — выполните локально в VS Code, PyCharm или Jupyter
Практика выполняется локально
Открыть практику →