Форматированная строка или 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 гид по стилю.
Иногда, когда вы пишете длинную строку, она может превышать этот предел. В этом случае вы можете разбить строку на несколько строк и сохранить вывод в одной строке.
Сделать это:
- Разбить строку на несколько строк.
- Преобразуйте каждую строку в отдельную фа-строку.
Например:
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-строк вы можете записать переменную именно там, где вы хотите, чтобы она появлялась.
Спасибо за прочтение. Надеюсь, вы найдете это полезным.
Приятного кодирования!