f-строки в Python для форматирования строк

Форматированная строка или F-строка в Python позволяет вставлять переменные в строки удобным и читаемым способом.

Например:

name = "Nick"
print(f"My name is {name}")

Выход:

My name is Nick

Давайте сравним это со старым подходом, используя метод формат() метод:

name = "Nick"
print("My name is {}".format(name))

f-строка более удобна, особенно когда количество встроенных переменных велико.

Это подробное руководство по использованию F-строк в Python.. Это руководство научит вас основам современного форматирования строк в Python с использованием F-строк. Вы также увидите, какую проблему решают F-строки и какие способы форматирования строк существовали раньше.

Как форматировать строки в Python — старый способ

Начиная с выпуска Python 2.6, вы использовали формат() метод для встраивания переменных в строки.

В качестве примера:

name = "Nick"
print("My name is {}".format(name))

Выход:

My name is Nick

Этот подход довольно прост и поэтому его легко понять. Однако если вы увеличиваете количество переменных для встраивания, сложность кода значительно возрастает.

Например, давайте встроим четыре строки в строку, используя формат() метод:

first_name = "Nick"
last_name = "Jones"
profession = "Software Engineer"
platform = "Codingem"

print("Hi! I am {first_name} {last_name}, a {profession}. I'm writing a new article on{platform}.".format(first_name= first_name, last_name =last_name , profession = profession, platform = platform))

Выход:

Hi! I am Nick Jones, a Software Engineer. I'm writing a new article on Codingem.com.

Как вы можете видеть, Распечатать() вызов функции смехотворно длинный.

Это основная проблема при использовании формат() метод в Python. Начиная с выпуска Python 3.6, используя формат() больше не нужен. Теперь есть более элегантное решение, называемое фа-струнами.

Давайте посмотрим, как F-строки помогают сделать форматирование строк проще и понятнее.

F-строки в Python

Из-за беспорядочного форматирования строк с помощью формат() В Python 3.6 имеется удобный способ форматирования строк, называемый F-строками.

Использовать F-строку в Python легко:

  • Добавить персонажа ж перед строкой.
  • Внутри строки добавьте любое количество переменных, заключенных в фигурные скобки. {}.

Например:

name = "Nick"
print(f"My name is {name}")

Выход:

My name is Nick

Благодаря этому код выглядит намного приятнее, и нам, разработчикам, его легче читать.

Теперь добавление нескольких переменных больше не портит ситуацию:

first_name = "Nick"
last_name = "Jones"
profession = "Software Engineer"
platform = "Codingem.com"

print(f"Hi! I am {first_name} {last_name}, a {profession}. I'm writing a new article on {platform}.")

Выход:

Hi! I am Nick Jones, a Software Engineer. I'm writing a new article on Codingem.com.

Выглядит действительно хорошо!

Теперь вы знаете, как использовать F-строки в Python для решения проблемы форматирования строк.

Далее давайте рассмотрим некоторые часто используемые параметры форматирования, связанные с F-строками.

Произвольные выражения и форматированные строки

Вы можете добавить любое допустимое выражение Python внутрь F-строки.

Например, давайте встроим результат вычисления в строку с помощью F-строки:

print(f"The result of 3*6 is {3*6}")

Выход:

The result of 3*6 is 18

Многострочные форматированные строки в Python

Длина строки Python не должна превышать 79 символов согласно ПЭП8 гид по стилю.

Иногда, когда вы пишете длинную строку, она может превышать этот предел. В этом случае вы можете разбить строку на несколько строк и сохранить вывод в одной строке.

Сделать это:

  1. Разбить строку на несколько строк.
  2. Преобразуйте каждую строку в отдельную фа-строку.

Например:

first_name = "Nick"
last_name = "Jones"
profession = "Software Engineer"
platform = "Codingem"

message = (
    f"Hi! I am {first_name} {last_name}."
    f"I'm a {profession}."
    f"I'm writing a new article on{platform}."
)

print(message)

Выход:

Hi! I am Nick Jones, a Software Engineer. I'm writing a new article on Codingem.com.

Таблица F-строк в Python

Вы можете указать количество пробелов, занимаемых каждой переменной внутри вашей F-строки.

Для этого добавьте :{} после имени переменной внутри F-строки и укажите количество пробелов внутри фигурных скобок.

Это может быть полезно, например, если вы хотите отформатировать данные так, чтобы они выглядели как таблица.

Например:

data = (("x", "y", "sum"), (1, 2, 3), (3, 5, 8))

for x, y, sum in data:
    print(f"{x:{1}} {y:{1}} {sum:{2}}")

Результат:

x y sum
1 2  3
3 5  8

Десятичные знаки F-строки в Python

Чтобы указать желаемую точность числа с плавающей запятой, используйте двоеточие (:), за которым следует количество цифр, которые вы хотите видеть в выводе.

Например, давайте напечатаем число с точностью до 2 десятичных знаков, используя F-строку:

f_num = 12.3241233
print(f"The number is: {f_num:.2f}")

Выход:

The number is: 12.32

Заключение

Сегодня вы узнали, как использовать F-строки в Python как новый способ форматирования строк.

Напомним, что форматированная строка или F-строка в Python — это более чистый способ вставки переменных в строки.

В качестве примера:

name = "Nick"
print(f"My name is {name}")

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

Спасибо за прочтение. Надеюсь, вы найдете это полезным.

Приятного кодирования!

Дальнейшее чтение

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *