Форматирование строк Python

Чтобы обеспечить отображение строки по ожидаемому плану, можно использовать format() Метод форматирует результат.

Строка format()

format() Метод позволяет форматировать选定ную часть строки.

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

Чтобы контролировать такие значения, добавьте占位щик (фигурные скобки) в текст: {}),и затем выполните значения через метод format():

Пример

Добавьте占位щик для цены, которую нужно отобразить:

price = 52
txt = "Цена составляет {} долларов"
print(txt.format(price))

Запуск примера

Вы можете добавить параметры в фигурные скобки, чтобы определить, как преобразовывать значения:

Пример

Форматируйте цену как число с двумя знаками после запятой:

txt = "Цена составляет {:.2f} долларов"

Запуск примера

Просмотрите все типы форматов в справочнике метода format() строки.

Множество значений

Если нужно использовать больше значений, просто добавьте их в метод format():

print(txt.format(price, itemno, count))

Добавьте больше占位щиков:

Пример

quantity = 3
itemno = 567
price = 52
myorder = "Я хочу {} деталей номера {} за {:.2f} долларов."
print(myorder.format(quantity, itemno, price))

Запуск примера

Индексные номера

Вы можете использовать индексные номера (curly braces) {0} Убедитесь, что значения помещены в правильные占аки, используя числа в curly braces):

Пример

quantity = 3
itemno = 567
price = 52
myorder = "I want {0} pieces of item number {1} for {2:.2f} dollars."
print(myorder.format(quantity, itemno, price))

Запуск примера

Кроме того, если нужно多次 использовать один и тот же значений, используйте индекс:

Пример

age = 63
name = "Bill"
txt = "His name is {1}. {1} is {0} years old."
print(txt.format(age, name))

Запуск примера

Именованный индекс

Вы также можете использовать числа в curly braces {carname} Введите имя, чтобы использовать именованный индекс, но при передаче значений txt.format(carname = "Ford") необходимо использовать имя:

Пример

myorder = "У меня есть {carname}, это {model}."
print(myorder.format(carname = "Porsche", model = "911"))

Запуск примера