Skip to content

🐢 Python Turtle - Довідник та Вікі

Швидкий огляд усіх важливих команд та правил з курсу Python.

📚 Основи алгоритмів

Визначення: Алгоритм

Алгоритм - це набір інструкцій для вирішення завдання або набору завдань.

Властивості алгоритмів

  • Виконуваність: Алгоритм повинен виконуватися без помилок
  • Скінченність: Алгоритм має скінченну довжину
  • Повторюваність: Однакові входи дають однакові виходи
  • Детермінізм: Для кожного кроку існує точно один визначений наступний крок

🚀 Основи - Завжди спочатку!

python
import turtle
t = turtle.Turtle()
t.speed(5)  # 1:slowest, 3:slow, 5:normal, 10:fast, 0:fastest

🎨 Команди черепашки

КомандаЩо відбуваєтьсяПриклад
t.forward(число)Тобі йде впередt.forward(100)
t.backward(число)Тобі йде назадt.backward(50)
t.right(градуси)Тобі повертає праворучt.right(90)
t.left(градуси)Тобі повертає ліворучt.left(45)
t.circle(радіус)Тобі малює колоt.circle(30)
t.goto(x, y)Тобі стрибає до позиціїt.goto(100, 50)
t.penup()Підняти олівець (не малювати)t.penup()
t.pendown()Опустити олівець (малювати)t.pendown()
t.color("колір")Змінити колірt.color("red")
t.write("текст")Написати текстt.write("Привіт!")
t.heading()Отримати поточний напрямок (0-360°)if t.heading() == 90:

📊 Змінні та модель контейнера

Змінні - це контейнери для значень, з яких можна щось витягти та щось покласти.

ПравилоПоясненняПриклад
Створитиім'я = значеннявік = 15
ПерезаписатиНове значення з =вік = 16
ОбчислитиЗмінна = стара змінна + числовік = вік + 1
ІменаМаленькі, зрозумілі, без пробіліврозмір_взуття = 42

Типи даних

ТипЩо цеПрикладПеретворити
IntegerЦіле числоx = 5int("5")
FloatЧисло з комоюy = 3.14float("3.14")
StringТекстім'я = "Макс"str(5)
BooleanІстина/Хибністьперемога = True-

Приведення типів (Conversion)

python
# Рядок у число
вік = int(input("Вік: "))        # до Integer
зріст = float(input("Зріст: "))    # до Float

# Число в рядок
повідомлення = "Мені " + str(25) + " років"

🔢 Арифметичні оператори

ОператорНазваПрикладРезультат
+Додавання5 + 38
-Віднімання5 - 32
*Множення5 * 315
/Ділення10 / 33.333...
//Цілочисельне ділення10 // 33
%Остача (Модуло)10 % 31
**Степінь2 ** 38

✅ Умови та розгалуження

Оператори порівняння

ОператорЗначенняПриклад
==дорівнюєif x == 5:
!=не дорівнюєif x != 5:
<менше ніжif x < 5:
<=менше або дорівнюєif x <= 5:
>більше ніжif x > 5:
>=більше або дорівнюєif x >= 5:

Логічні оператори

ОператорЗначенняПриклад
andІ (обидва повинні бути істинними)if x > 0 and x < 10:
orАБО (один повинен бути істинним)if x < 0 or x > 10:
notНЕ (обертає)if not (x == 5):

If-структури

python
# Проста умова
if умова:
    # Виконується, якщо істина
    t.write("Істина!")
else:
    # Виконується, якщо хибність
    t.write("Хибність!")

# Кілька умов
if x < 0:
    t.write("Від'ємне")
elif x == 0:
    t.write("Нуль")
else:
    t.write("Додатне")

🔄 Цикли

For-цикл (певна кількість)

python
for i in range(5):          # 0, 1, 2, 3, 4
    t.forward(10)

for i in range(2, 8):       # 2, 3, 4, 5, 6, 7
    t.write(i)

for i in range(0, 10, 2):   # 0, 2, 4, 6, 8 (розмір кроку 2)
    t.circle(i)
Варіанти Range
  • range(5): 0 до 4
  • range(2, 8): 2 до 7
  • range(0, 10, 2): 0, 2, 4, 6, 8 (кроки по 2)

While-цикл (поки умова істинна)

python
x = 0
while x < 5:
    t.forward(x)
    x = x + 1

Важливо

  • Завжди двокрапка після умови/циклу: :
  • Вміст повинен бути відступлений (клавіша Tab)
  • З while-циклами: Змінюйте змінну, інакше нескінченний цикл!

💬 Введення користувача

КомандаЩо відбуваєтьсяПриклад
input("текст")Користувач вводить текстім'я = input("Ваше ім'я: ")
int(input())Перетворити введення на числовік = int(input("Вік: "))
float(input())Перетворити введення на число з комоюзріст = float(input("Зріст: "))

Важлива примітка

input() завжди повертає рядок! Для обчислень потрібно приводити:

python
# Неправильно:
вік = input("Вік: ")  # Рядок!

# Правильно:
вік = int(input("Вік: "))  # Integer!

⚙️ Функції

Проста функція

python
def моя_функція():
    t.forward(50)
    t.left(90)

# Виклик:
моя_функція()

Функція з параметрами

python
def квадрат(розмір):
    for i in range(4):
        t.forward(розмір)
        t.left(90)

# Виклик:
квадрат(50)

Функція з кількома параметрами

python
def прямокутник(ширина, висота):
    for i in range(2):
        t.forward(ширина)
        t.left(90)
        t.forward(висота)
        t.left(90)

# Виклик:
прямокутник(80, 40)

Функція зі значенням, що повертається

python
def додати(a, b):
    результат = a + b
    return результат

# Використання:
сума = додати(5, 3)
t.write(сума)

📚 Важливі бібліотеки

Random (Випадкові числа)

python
import random

# Випадкове ціле число між 1 та 6
кубик = random.randint(1, 6)

# Випадковий елемент зі списку
кольори = ["red", "blue", "green"]
колір = random.choice(кольори)

# Випадкове число з комою між 0 та 1
випадкове_число = random.random()

Math (Математика)

python
import math

# Використання Пі
довжина = 2 * math.pi * радіус

# Квадратний корінь
корінь = math.sqrt(25)  # = 5.0

# Степінь
степінь = math.pow(2, 3)  # = 8.0

⚠️ Поширені помилки

ПомилкаПравильноНеправильно
Забули двокрапкуif x == 5:if x == 5
Забули відступ t.forward(10)t.forward(10)
= замість ==if x == 5:if x = 5:
Рядок + Число"Вік: " + str(15)"Вік: " + 15
Велика/мала літераTruetrue
Змінна перед присвоєннямx = 5 потім print(x)print(x) потім x = 5

🎯 Корисні хитрощі

Форматування рядків

python
ім'я = "Макс"
вік = 15
t.write(f"Привіт {ім'я}, тобі {вік} років!")

Списки

python
числа = [1, 2, 3, 4, 5]
кольори = ["red", "blue", "green"]

# Перший елемент: список[0]
перше_число = числа[0]  # = 1

# Проходження списку:
for колір in кольори:
    t.color(колір)
    t.circle(20)

Кілька об'єктів черепашки

python
import turtle

тобі = turtle.Turtle()
ліза = turtle.Turtle()

тобі.color("red")
ліза.color("blue")

тобі.forward(100)
ліза.backward(100)

🔧 Поради для налагодження

  1. Print-налагодження: Використовуйте print() для перевірки значень змінних
python
x = 10
print(f"x має значення: {x}")
  1. Крок за кроком: Тестуйте маленькі частини окремо

  2. Використовуйте коментарі: Пояснюйте складні місця

python
# Тут малюється квадрат
for i in range(4):
    t.forward(50)
    t.left(90)
  1. Поширені проблеми:
    • Забуті двокрапки
    • Неправильний відступ
    • = замість ==
    • Нескінченні цикли з while

🎨 Приклади геометричних візерунків

Спіраль

python
for i in range(50):
    t.forward(i * 2)
    t.left(90)

Зірка (5-променева)

python
for i in range(5):
    t.forward(100)
    t.right(144)

Концентричні кола

python
for i in range(1, 6):
    t.circle(i * 20)
    t.penup()
    t.right(90)
    t.forward(20)
    t.left(90)
    t.pendown()

📋 Поради планування проектів

  1. Плануйте спочатку: Подумайте про хід виконання, перш ніж кодувати
  2. Маленькі кроки: Програмуйте маленькими, тестованими секціями
  3. Тестуйте часто: Регулярно запускайте свою програму
  4. Коментуйте: Пояснюйте складні частини в коді
  5. Просіть допомоги: При проблемах не боріться занадто довго самостійно

📝 Швидкий шаблон

python
import turtle
import random
import math

t = turtle.Turtle()
t.speed(5)

# Ваш код тут

# Тримати вікно відкритим (в кінці):
turtle.done()

🏆 Критерії оцінювання

Для проектів оцінюється наступне:

  • Функціональність: Чи працює програма без помилок?
  • Якість коду: Чиста структура та коментарі?
  • Використання концепцій: Осмислене використання функцій, циклів тощо?
  • Креативність: Власні ідеї та розширення
  • Вирішення проблем: Як вирішуються виклики?