F-строки

Тренажер по Python для пользователей с начальным уровнем подготовки.

Тренажер по Python

Форматирование строк — это ежедневная задача для любого Python-разработчика. Нужно ли вывести приветствие, составить отчет или записать данные в лог-файл — везде мы работаем со строками. Раньше для этого использовали громоздкие конструкции, но с появлением f-строк всё изменилось. F-строки, или форматированные строковые литералы, позволяют встраивать значения переменных и даже целые выражения прямо в строку, делая код чище и понятнее. В этом уроке мы отработаем их использование на практике: от простого вывода переменных до вставки результатов вычислений и форматирования чисел. Эти задания помогут вам освоить мощный и элегантный инструмент для работы со строками.

Список тем

Основы f-строк: префикс и переменная

id: 39972_task_fstring_1

Чтобы превратить обычную строку в f-строку, нужно добавить специальный префикс перед открывающей кавычкой и обернуть имя переменной в фигурные скобки. Заполните пропуски, чтобы создать ваше первое приветствие с помощью f-строки.

Заполните пропуски
name = "Егор"
# Используйте f-строку для вывода приветствия
greeting = input1S"Привет, {input2S}!"
print(greeting)
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

Найдите пропущенный префикс

id: 39972_task_fstring_2

В этом коде есть одна маленькая, но критическая ошибка. Программист хотел использовать f-строку для вывода информации о товаре, но что-то забыл. В результате переменные не подставляются в строку. Найдите и исправьте ошибку.

Найдите ошибку и исправьте
item = "Смартфон"
price = 25000
print("Товар: {item}, Цена: {price} руб.")
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

Вычисления внутри f-строки

id: 39972_task_fstring_3

Сила f-строк в том, что они могут содержать не только переменные, но и целые Python-выражения. Проанализируйте код и впишите в поле ответа, какую именно строку он выведет на экран.

Что должно получиться?
birth_year = 1999
print(f"Если вы родились в {birth_year}, то в 2024 году вам исполнилось {2024 - birth_year} лет.")
Сообщения
Проверить
Показать подсказку

Вызов метода внутри f-строки

id: 39972_task_fstring_4

Внутри f-строк можно даже вызывать методы объектов. В этом коде к переменной `title` применяется строковый метод `.upper()`. Какой будет результат выполнения этого кода? Выберите правильный вариант.

Выберите правильный вариант ответа
title = "Игра престолов"
print(f"Название книги: {title.upper()}")
Сообщения
Проверить
Показать подсказку

Соберите отчет о погоде

id: 39972_task_fstring_5

Из перемешанных строк кода соберите небольшую программу. Она должна определять переменные для города и температуры, а затем выводить их в одной строке с помощью f-строки. Две строки являются лишними.

Перетяните в правильном порядке строки из одного блока в другой
print(f"В городе {city} сегодня {temp}°C.")
temp = -5
print(city, temp)
city = "Новосибирск"
import math
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

Форматирование чисел с плавающей точкой

id: 39972_task_fstring_6

F-строки позволяют не просто вставлять значения, но и форматировать их. Например, можно ограничить количество знаков после запятой у дробного числа. Дополните код, чтобы вывести стоимость товара с точностью до двух знаков после запятой (как на ценниках в магазине).

Заполните пропуски
price = 599.999
weight = 1.5
print(f"Стоимость: {price:input1S} руб. за {weight} кг")
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

Неправильные скобки

id: 39972_task_fstring_7

Новички иногда путают типы скобок. Для подстановки переменных в f-строках используются только фигурные скобки. В этом коде была допущена ошибка — вместо них использовались круглые. Исправьте строку, чтобы код заработал.

Найдите ошибку и исправьте
user_id = 101
status = "active"
print(f"Пользователь с ID (user_id) имеет статус: (status)")
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

Соберите f-строку из токенов

id: 39972_task_fstring_8

Используя элементы из "банка", соберите правильную f-строку. В строке должны быть подставлены переменные `language` и `year`. Перетащите нужные токены в пропуски. Некоторые токены лишние.

Нужно правильно расставить в пропуски предложенные варианты
language = "Python"
year = 1991
message = input1S"Язык input2S был создан в input3S году."
print(message)
f
language
year
{language}
{year}
"
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

Экранирование фигурных скобок

id: 39972_task_fstring_9

Что делать, если в f-строке нужно вывести сами символы фигурных скобок, а не использовать их для подстановки? Для этого их нужно "экранировать", то есть удвоить. Посмотрите на код и напишите, что именно он выведет.

Что должно получиться?
syntax_element = "переменная"
print(f"В Python для подстановки используют {{ {syntax_element} }}")
Сообщения
Проверить
Показать подсказку

Скрипт-приветствие по возрасту

id: 39972_task_fstring_10

Соберите из строк полноценный скрипт. Программа должна запросить имя и возраст пользователя, а затем, используя f-строку, вывести сообщение, которое включает и имя, и вычисление возраста через год.

Расставьте строки в правильном порядке
print(f"Привет, {name}! В следующем году тебе будет {age + 1}.")
name = input("Как тебя зовут? ")
age = int(input("Сколько тебе лет? "))
Сообщения
Проверить
Показать подсказку
НайтиКурс.Ру