Python Форматування рядка
Щоб переконатися, що рядок відображатиметься належним чином, ми можемо відформатувати результат за допомогою методу format()
.
Рядковий format()
Метод format()
дозволяє форматувати вибрані частини рядка.
Іноді є частини тексту, які ви не контролюєте; можливо, вони надходять із бази даних чи введені користувачами?
Щоб контролювати такі значення, додайте покажчики місця заповнення (фігурні дужки {}
) у тексті та проведіть значення через метод format()
:
Приклад
Додайте заповнювач, де потрібно відобразити ціну:
price = 49
txt = "Ціна {} доларів"
print(txt.format(price))
Спробуйте самі »
Ви можете додати параметри у фігурні дужки, щоб указати спосіб перетворення значення:
Приклад
Відформатуйте ціну, яка має відображатися як число з двома десятковими знаками:
txt = "Ціна є {:.2f} доларів"
Спробуйте самі »
Перегляньте всі типи форматування в довіднику Рядковий format().
Кілька значень
Якщо ви хочете використовувати більше значень, просто додайте більше значень до методу format():
print(txt.format(price, itemno, count))
І додайте більше заповнювачів:
Приклад
quantity = 3
itemno = 567
price = 49
myorder = "Я хочу {} штук товару номер {} за {:.2f} доларів."
print(myorder.format(quantity, itemno, price))
Спробуйте самі »
Індексні номери
Ви можете використовувати індексні номери (число у фігурних дужках {0}
), щоб переконатися, що значення розміщено в правильних заповнювачах:
Приклад
quantity = 3
itemno = 567
price = 49
myorder = "Я хочу {0} одиниць позиції номер {1} за {2:.2f} доларів."
print(myorder.format(quantity, itemno, price))
Спробуйте самі »
Крім того, якщо ви хочете посилатися на те саме значення більше одного разу, використовуйте номер індексу:
Приклад
age = 36
name = "John"
txt = "Його ім’я {1}. {1} має {0} років."
print(txt.format(age, name))
Спробуйте самі »
Іменовані індекси
Ви також можете використовувати іменовані індекси, ввівши назву у фігурні дужки {carname}
, але тоді ви повинні використовувати імена, коли передаєте значення параметрів txt.format(carname = "Ford")
:
Приклад
myorder = "У мене є {carname}, це {model}."
print(myorder.format(carname = "Ford", model = "Mustang"))
Спробуйте самі »