Теория:

Как уже знаем из ранней теории, Черепаха может поднимать и опускать перо: если перо опущено (\(up()\)), то после передвижения след не остаётся, можно сказать, что исполнитель не рисует; если написать команду \(down()\), то перо опущено и после передвижения за Черепахой остаётся след. Такую возможность можно использовать, например, для рисования пунктирной линии.

Пример \(1\)
\( \)
Напишем программу рисования пунктирной линии синего цвета.
 
\(import\) \(turtle\)
\(turtle.reset() \)
\(turtle.color('blue') \) 
\(turtle.up() \) 
\(for\)  \(i\)  \(in\)  \(range(5):\) 
   \(turtle.forward(20)\)   
   \( turtle.down()\)
   \( turtle.forward(20)\)
    \(turtle.up()\)
    \(turtle.forward(20)\)
 # выбор цвета пера
 # поднять перо
 # повторить \(5\) раз
 # далее чередуются команды (перо поднять или опустить)
 
 

пунктирн.jpg
Рис. \(1\). Результат работы программы
 
Пример \(2\)
 
Нарисуем кубик, используя возможность управлять пером.
 
кубик.jpg
Рис. \(2\). Результат работы программы
 
Программный код
 
\(import\) \(turtle\)
\(turtle.reset() \)
 
\(def\)  \(punk(n):\)
    \(for\)  \(i\)  \(in\)  \(range(n):\)
        \(turtle.forward(10)\)
        \(turtle.down() \)
       \( turtle.forward(10) \)
        \(turtle.up() \)
# функция для рисования пунктирной линии
 
 
 
 
 
\(turtle.color('blue') \)# выбор цвета
\(turtle.left(90)\) 
\(for\) \(i\) \(in\) \(range(4):\)
    \(turtle.forward(100)\)
    \(turtle.right(90)\)
# в цикле рисуется квадрат
 
 
\(turtle.up()\)
\(turtle.forward (100)\)
\(turtle.down()\)
\(turtle.right (45)\)
\(turtle.forward(40)\)
\(turtle.right (45)\)
\(turtle.forward(100)\)
\(turtle.right (135)\)
\(turtle.forward(40)\)
\(turtle.up()\)
\(turtle.left (45)\)
\(turtle.forward(100)\)
\(turtle.down()\)
\(turtle.left (135)\)
\(turtle.forward(40)\)
\(turtle.left (45)\)
\(turtle.forward(100)\)
\(turtle.up()\)
\(turtle.goto(0,0)\)
\(turtle.right (45)\)
\(turtle.down()\)
\(turtle.up()\)
\(punk(2)\)
\(turtle.left (45)\)
# команды далее рисуют сплошные линии
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
\(punk(5)\)# вызов функции для рисования пунктира
\(turtle.backward(100)\)
\(turtle.right (90)\)
\(turtle.up()\)
 
\(punk(5)\)# вызов функции для рисования пунктира
 
Для заполнения замкнутой фигуры цветом используются команды.
 
\(turtle.fillcolor("цвет")\)          
\(turtle.begin_fill()\)
\(turtle.<что рисуем>\)
\(turtle.end_fill()\)
# определение цвета внутри контура
# начало закрашивания
# рисование замкнутой фигуры
# конец заливки
 
Пример \(3\)
 
Нарисуем круг диаметром \(150\) и закрасим его жёлтым цветом.
 
\(import\) \(turtle\)
\(turtle.reset() \)
 
\(turtle.color("blue")\)   # выбор цвета контура
\(turtle.fillcolor("yellow")\)   # выбор заливки
\(turtle.begin_fill()\)# начало закрашивания
\(turtle.circle(150)\)# рисуем круг
\(turtle.end_fill()\)
# конец заливки
 
закра.jpg
Рис. \(3\). Результат работы программы
Источники:
Рис. 1. Результат работы программы. © ЯКласс.
Рис. 2. Результат работы программы. © ЯКласс.
Рис. 3. Результат работы программы. © ЯКласс.