Глава 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().