Python 3.6+Строки (str)понятие
f-строки
форматирование
f-строки (f'...') — форматированные строковые литералы. Выражения в {} вычисляются во время выполнения.
Синтаксис
f'{expr}' | f'{val:.2f}' | f'{val!r}'
Литеральная фигурная скобка пишется удвоением: f'{{{x}}}' выведет значение x в скобках. До Python 3.12 внутри выражения нельзя было использовать те же кавычки, что у самой строки, и обратный слэш — теперь (PEP 701) можно, так что чужой код с промежуточными переменными часто написан именно из-за старого ограничения. Помните, что f-строка подставляет значения сразу при вычислении литерала: заготовить её как шаблон на будущее нельзя, для этого есть str.format().
Примеры
name = 'Alice'
print(f'Hello, {name}!')
# → 'Hello, Alice!'
x = 3.14159
print(f'{x:.2f}')
# → '3.14'
print(f'{2 ** 10}')
# → '1024'
n = 42
print(f'{n:>10d}')
# → ' 42'
print(f'{n:010d}')
# → '0000000042'
s = 'hello'
print(f'{s!r}')
# → "'hello'"
width = 10
print(f'{"center":^{width}}')
# → center (выравнивание по центру, ширина 10)
val = 1234567.89
print(f'{val:,.2f}')
# → '1,234,567.89'
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности