Практическая 2 · Python

Библиотеки: персонажи, текст и QR

Продолжим в том же блокноте. Библиотека — это готовые инструменты, которые можно подключить к своей программе.

Подготовьте новые ячейки

Сначала закончите игру. Выберите пустую ячейку под игрой. Если её нет, нажмите + на панели блокнота — Insert a cell below.

Каждый блок кода в этой практической переносите в отдельную ячейку. Выполняйте их по порядку с помощью Shift + Enter.

Запускайте выбранную ячейку, а не весь блокнот сразу: игра выше содержит input() и будет ждать ответа.

1. Установите библиотеки

Команда %pip install установит три библиотеки в рабочую среду. Перенесите код ниже в новую ячейку и нажмите Shift + Enter.

Python · новая ячейка
# Установите библиотеки и дождитесь окончания выполнения ячейки.
%pip install cowsay transliterate qrcode
print("Библиотеки установлены!")

Дождитесь сообщения «Библиотеки установлены!». Только после этого переходите дальше.

Установка занимает некоторое время и требует интернета. После перезапуска ядра или новой сессии выполните эту ячейку снова.

2. Нарисуйте говорящую корову

Библиотека cowsay рисует персонажа из символов и добавляет ему реплику.

Python · новая ячейка
# cowsay рисует персонажа из текстовых символов.
import cowsay

cowsay.cow("Привет! Я учусь программировать!")

Запустите ячейку: под кодом появится корова с сообщением. Замените текст в кавычках своей фразой и запустите ещё раз.

Попробуйте другого персонажа

Python · новая ячейка
# Попробуем другого персонажа и посмотрим список доступных.
cowsay.trex("Python — это интересно!")
print(cowsay.char_names)

trex — динозавр, tux — пингвин. Список cowsay.char_names показывает доступных персонажей.

Сделайте сами

В ячейке с коровой замените cowsay.cow на cowsay.tux. Придумайте, что скажет пингвин.

3. Замените русские буквы латинскими

Библиотека transliterate выполняет транслитерацию: например, Привет превращается в Privet.

Python · новая ячейка
# Транслитерация заменяет русские буквы латинскими.
from transliterate import translit

text = "Привет, мир!"
latin_text = translit(text, "ru", reversed=True)
print("Исходный текст:", text)
print("Латинские буквы:", latin_text)
Исходный текст: Привет, мир!
Латинские буквы: Privet, mir!
Это смена алфавита, а не перевод на английский. "ru" задаёт русский язык, а reversed=True — направление из кириллицы в латиницу.
Сделайте сами

Замените Привет, мир! названием своего города. Сравните исходный текст и результат.

4. Объедините две библиотеки

Сначала преобразуем фразу в латиницу, затем передадим её персонажу.

Python · новая ячейка
# Объединим две библиотеки в одном примере.
phrase = "Я умею писать код!"
latin_phrase = translit(phrase, "ru", reversed=True)
cowsay.cow(latin_phrase)

Измените фразу и выберите своего персонажа. Проверьте, что на рисунке появились латинские буквы.

5. Создайте свой QR-код

Библиотека qrcode превратит ссылку в изображение.

Python · новая ячейка
# Создадим QR-код, который можно отсканировать телефоном.
import qrcode
from qrcode.image.svg import SvgPathFillImage
from IPython.display import SVG, display

link = "https://пробы.ркси.рф/"
qr = qrcode.make(link, image_factory=SvgPathFillImage, box_size=24, border=4)
display(SVG(qr.to_string(encoding="unicode")))

Отсканируйте QR-код телефоном, откройте пробы.ркси.рф и сохраните страницу в закладки, чтобы вернуться к заданиям позже.

SVG и display помогают показать изображение в блокноте. Белый фон сохраняет читаемость QR-кода в любой теме.

Профессиональная проба · Python в JupyterLite