Подстановка внутри шаблона
В f-строке буква f перед кавычками включает обработку выражений в фигурных скобках. Обычный текст остаётся на своём месте, а значения вставляются в обозначенные позиции.
greeting = "Hello"
first_name = "Anna"
print(f"{greeting}, {first_name}!")
Вывод — Hello, Anna!. В шаблоне сразу видны пробел, запятая и восклицательный знак.
Задание источника
Используйте имя покупателя и номер заказа, уже заданные в переменных, чтобы вывести подтверждение:
username = "Anna"
order_number = 1337
print(f"Hello, {username}! Your order #{order_number} has been accepted.")
Результат:
Hello, Anna! Your order #1337 has been accepted.
Число внутри текста
order_number содержит целое число. f-строка создаёт его текстовое представление при подстановке, поэтому вручную соединять строку с числом оператором + не нужно.
Если убрать f, фигурные скобки и имена будут выведены буквально. Если заключить имя переменной в дополнительные кавычки внутри выражения, вместо значения можно случайно получить само имя как текст.
Когда создаётся строка
Редакционное уточнение: f-строка вычисляется при выполнении соответствующего выражения. Если сохранить готовое сообщение в переменную, а затем изменить username, уже сохранённое сообщение не обновится автоматически — его нужно сформировать заново.
Упражнение создаёт вывод, но не отправляет уведомление и не подтверждает реальную покупку. Оно учит собирать текст из данных без лишней цепочки конкатенаций.
Hexlet / Code Basics и участники · Исходный урок и решение · GNU AGPL v3. Упражнение сохранено; момент вычисления уточнён.