F-строка позволяет собрать понятный текст из обычных слов, переменных и выражений. Она пригодится для приветствий, результатов игры, сообщений программы и цветного текста в терминале.
Первая f-строка
Поставь букву f перед открывающей кавычкой, а имя переменной заключи в фигурные скобки {}:
name = 'Алекс'
level = 5
message = f'Игрок: {name}. Уровень: {level}.'
print(message)
Python заменит {name} и {level} их значениями:
Игрок: Алекс. Уровень: 5.
Переменные нужно создать до f-строки. Без буквы f фигурные скобки останутся обычным текстом.
Выражения внутри скобок
В фигурных скобках можно использовать простое выражение:
score = 40
bonus = 10
print(f'Всего очков: {score + bonus}')
Сложные вычисления лучше выполнить заранее и сохранить в переменной — так код легче читать.
Почему не всегда подходит знак +
При сложении строки и числа Python выдаст TypeError:
age = 16
# print('Возраст: ' + age) # TypeError
Число можно преобразовать через str(age), но f-строка обычно проще:
print(f'Возраст: {age}')
У print() есть и другой корректный вариант — передать значения через запятую:
print('Возраст:', age)
Многострочные f-строки
Префикс f работает и с тройными кавычками:
name = 'Алекс'
status = f"""Пилот: {name}
Статус: готов к запуску"""
print(status)
Если многострочный рисунок содержит обратные слеши, можно совместить префиксы f и r:
color = '\033[91m'
reset = '\033[0m'
rocket = fr"""{color}
/\
/__\
{reset}"""
print(rocket)
В fr-строке префикс f подставляет значения, а r сохраняет обратные слеши, написанные внутри самой строки.
Частые ошибки
- Выводится
{name}— добавьfперед открывающей кавычкой. NameError— создай переменную до использования и проверь её имя.SyntaxError— проверь парность кавычек, круглых и фигурных скобок.- Нужны фигурные скобки как текст — удвой их:
f'{{name}}'выведет{name}.
Главное
fставится непосредственно перед открывающей кавычкой;- значения и выражения записываются внутри
{}; - переменные создаются до использования;
frудобно для текста, где нужны и подстановки, и обратные слеши.
💬 Комментарии (0)
Комментариев пока нет
Станьте первым, кто поделится мнением об этой статье!