Глава 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()
★★★ Задача повышенной сложности
Ещё две операции

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

Итоги

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

  • Строки создают в одинарных, двойных или тройных кавычках; тройные сохраняют переносы строк.
  • Оператор + объединяет строки (конкатенация); print(a, b) — более простая альтернатива для вывода.
  • Символы строки доступны по индексу (с нуля) и отрицательному индексу (с конца); срез [a:b] достаёт часть строки, [::-1] — разворачивает её.
  • У строк десятки готовых методов: upper(), lower(), strip(), replace(), split() и другие — все они возвращают новую строку, не меняя исходную.
  • f-строки — современный способ форматирования; % и .format() — более старые, но всё ещё встречаются.
  • input() всегда возвращает строку — для чисел нужно явное преобразование int()/float().