6 советов и приемов по f-строкам Python

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

Интерполяция строк

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

str_val = 'apples'
num_val = 42

print(f'{num_val} {str_val}') # 42 apples
Имена переменных
Помимо получения значения переменной, вы также можете получить ее имя вместе со значением.Это может быть особенно полезно при отладке и может быть легко выполнено путем добавления знака равенства (=) после имени переменной внутри фигурных скобок.

Имейте в виду, что пробелы внутри фигурных скобок учитываются, поэтому добавление пробелов вокруг знака равенства может сделать результат более читаемым.
str_val = 'apples'
num_val = 42

print(f'{str_val=}, {num_val = }') # str_val='apples', num_val = 42
Математические операции
Синтаксически в отличие от имен переменных, вы также можете выполнять математические операции в f-строках.Вы можете поместить математическое выражение в фигурные скобки, и, если вы добавите знак равенства, вы получите выражение и его результат.
num_val = 42

print(f'{num_val % 2 = }') # num_val % 2 = 0
Печатное представление

Помимо простой интерполяции строк, вы можете захотеть вывести печатное представление значения. Это уже легко сделать с помощью функции repr(). f-строки обеспечивают гораздо более короткий синтаксис, добавляя !r внутри фигурных скобок.
str_val = 'apples'

print(f'{str_val!r}') # 'apples'
Форматирование чисел
Кроме того, f-строки также могут использоваться для форматирования — отсюда и буква f в имени. Чтобы добавить форматирование к значению, вы можете добавить двоеточие (:), за которым следует спецификатор формата. , если вы хотите также напечатать имя переменной.

Для этого отлично подходят числа.Если, например, вы хотите обрезать числовое значение до двух цифр после запятой, вы можете использовать спецификатор формата .2f.
price_val = 6.12658

print(f'{price_val:.2f}') # 6.13
Форматирование даты
Наконец, даты также можно форматировать так же, как числа, используя спецификаторы формата: как обычно, %Y обозначает полный год, %m — месяц и %d — день месяца.
from datetime import datetime;

date_val = datetime.utcnow()

print(f'{date_val=:%Y-%m-%d}') 

Ответить