🐢 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 = 5 | int("5") |
Float | Число з комою | y = 3.14 | float("3.14") |
String | Текст | ім'я = "Макс" | str(5) |
Boolean | Істина/Хибність | перемога = True | - |
Приведення типів (Conversion)
python
# Рядок у число
вік = int(input("Вік: ")) # до Integer
зріст = float(input("Зріст: ")) # до Float
# Число в рядок
повідомлення = "Мені " + str(25) + " років"
🔢 Арифметичні оператори
Оператор | Назва | Приклад | Результат |
---|---|---|---|
+ | Додавання | 5 + 3 | 8 |
- | Віднімання | 5 - 3 | 2 |
* | Множення | 5 * 3 | 15 |
/ | Ділення | 10 / 3 | 3.333... |
// | Цілочисельне ділення | 10 // 3 | 3 |
% | Остача (Модуло) | 10 % 3 | 1 |
** | Степінь | 2 ** 3 | 8 |
✅ Умови та розгалуження
Оператори порівняння
Оператор | Значення | Приклад |
---|---|---|
== | дорівнює | 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 до 4range(2, 8)
: 2 до 7range(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 |
Велика/мала літера | True | true |
Змінна перед присвоєнням | 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)
🔧 Поради для налагодження
- Print-налагодження: Використовуйте
print()
для перевірки значень змінних
python
x = 10
print(f"x має значення: {x}")
Крок за кроком: Тестуйте маленькі частини окремо
Використовуйте коментарі: Пояснюйте складні місця
python
# Тут малюється квадрат
for i in range(4):
t.forward(50)
t.left(90)
- Поширені проблеми:
- Забуті двокрапки
- Неправильний відступ
=
замість==
- Нескінченні цикли з 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()
📋 Поради планування проектів
- Плануйте спочатку: Подумайте про хід виконання, перш ніж кодувати
- Маленькі кроки: Програмуйте маленькими, тестованими секціями
- Тестуйте часто: Регулярно запускайте свою програму
- Коментуйте: Пояснюйте складні частини в коді
- Просіть допомоги: При проблемах не боріться занадто довго самостійно
📝 Швидкий шаблон
python
import turtle
import random
import math
t = turtle.Turtle()
t.speed(5)
# Ваш код тут
# Тримати вікно відкритим (в кінці):
turtle.done()
🏆 Критерії оцінювання
Для проектів оцінюється наступне:
- Функціональність: Чи працює програма без помилок?
- Якість коду: Чиста структура та коментарі?
- Використання концепцій: Осмислене використання функцій, циклів тощо?
- Креативність: Власні ідеї та розширення
- Вирішення проблем: Як вирішуються виклики?