Python 3: Форматирование текста и f-strings
Python предоставляет несколько методов форматирования текста. Независимо от того, хотите ли вы вставить текстовые переменные в строку или числовые значения, существует метод, который может помочь вам сделать это.
В этом блоге мы расскажем о трех способах форматирования строк, предоставляемых Python.
Метод format()
Метод format()
форматирует указанные значения и вставляет их внутрь заполнителя строки. Заполнитель определяется с помощью фигурных скобок: {}
Синтаксис
string.format(value1, value2…)
name = 'Sunil Kumar'
print('Hello, {}!!'.format(name))
# Output
# Hello, Sunil Kumar!!
Мы также можем указать индекс вставляемого значения:
fname = 'Sunil'
lname = 'kumar'
print('Full name: {0} {1}.'.format(fname, lname))
# Output
# Full name: Sunil kumar.
Мы также можем использовать ключевые слова для указания вставляемых значений: Обратите внимание, что мы можем передавать ключевые слова в любом порядке.
fname = 'Sunil'
lname = 'kumar'
print('Full name: {fname} {lname}.'.format(lname=lname,fname=fname))
# Output
# Full name: Sunil kumar.
Оператор %
Python предоставляет форматирование строк в стиле C для создания новых отформатированных строк. Оператор “%” используется для форматирования набора переменных, заключенных в “кортеж”, вместе со строкой формата, которая содержит обычный текст вместе со “спецификаторами аргументов” и специальными символами, такими как “%s” и “%d”.
name = "Sunil Kumar"
age = 43
print("%s is %d years old." % (name, age))
Ниже приведены некоторые основные спецификаторы аргументов, которые вы должны знать:
%s
для строк%d
для целых чисел%f
для чисел с плавающей запятой%.2f
для чисел с плавающей запятой с точностью до 2 цифр%x
для целых чисел в шестнадцатеричном представлении
f-strings
В выпуске Python версии 3.6 были введены форматированные строковые литералы, называемые просто “f-strings”. Они называются f-strings, потому что вам нужно добавить к строке букву ‘f’, чтобы создать fstring
. Буква "f" также указывает на то, что эти строки используются для форматирования. Внутри строки вы можете вставить переменные, заключив их в фигурные скобки {}
:
fname = 'Sunil'
lname = 'kumar'
print(f'Full name: {fname} {lname}.'.format(fname, lname))
# Output
# Full name: Sunil kumar.
Мы также можем использовать выражения внутри фигурных скобок:
name = 'Sunil Kumar'
age = 40
print(f'{name} is {age + 2} years old.')
# Output
# Sunil Kumar is 42 years old.
Чтобы узнать больше о строке f, посетите https://fstring.help/