Глава 8 · Играем с буквами и словами

Мини-проект — красочная и динамическая математика

Собираем главу воедино: ввод пользователя, числа, строки и Turtle — в одном интерактивном мини-калькуляторе.

Финальный мини-проект главы объединяет практически всё: ввод от пользователя, числа из глав 4–5, строки и Turtle из глав 6–7 — маленький «калькулятор с характером».

dinamicheskaya_matematika.py
import turtle

screen = turtle.Screen()
artist = turtle.Turtle()
artist.hideturtle()

a = float(input("Первое число: "))
b = float(input("Второе число: "))

artist.penup()
artist.goto(0, 60)
artist.pencolor("purple")
artist.write(f"{a} + {b} = {a + b}", align="center", font=("Arial", 18, "bold"))

artist.goto(0, 0)
artist.pencolor("blue")
artist.write(f"{a} * {b} = {a * b}", align="center", font=("Arial", 18, "bold"))

screen.exitonclick()
★★★ Задача повышенной сложности
Ещё две операции

Добавьте на холст ещё две строки: результат вычитания и деления — своим цветом для каждой.

Практика: динамическая математика (логика, без окна Turtle)
Интерактивный ноутбук прямо в браузере — Python 3.14 через Pyodide, без установки
Открыть практику →

Итоги

Что мы узнали в этой главе

  • Строки создают в одинарных, двойных или тройных кавычках; тройные сохраняют переносы строк, raw-строки (r"...") отключают экранирование.
  • Служебные последовательности вроде \n и \t вставляют символы, у которых нет своей клавиши; repr() показывает строку «как в коде».
  • Символы строки доступны по индексу с нуля и по отрицательному индексу с конца — первый символ всегда имеет индекс 0.
  • Срез [start:stop:step] достаёт часть строки: start включён, stop — нет; [::-1] разворачивает строку.
  • Строки неизменяемы: методы вроде upper() возвращают НОВУЮ строку, не трогая исходную.
  • У строк десятки готовых методов — от регистра (upper(), strip()) до поиска и разбора (split(), replace(), find()) и проверки состава (isdigit(), isalpha()).
  • in проверяет вхождение подстроки; строку можно перебрать циклом for ch in text.
  • f-строки — современный способ форматирования, с поддержкой выражений, точности и выравнивания; % и .format() — более старые, но всё ещё встречаются в реальном коде.
  • input() всегда возвращает строку — для чисел нужно явное преобразование int()/float().
  • Python одинаково хорошо работает с кириллицей, латиницей и эмодзи без специальной настройки.