Formátování řetězců v Pythonu
Abychom se ujistili, že se řetězec zobrazí podle očekávání, můžeme pomocí format()
metody naformátovat výsledek.
Formát řetězce()
Metoda format()
umožňuje formátovat vybrané části řetězce.
Někdy jsou části textu, které neovládáte, možná pocházejí z databáze nebo uživatelského vstupu?
Chcete-li takové hodnoty ovládat, přidejte do textu zástupné symboly (složené závorky {}
) a proveďte hodnoty pomocí
format()
metody:
Příklad
Přidejte zástupný symbol na místo, kde chcete zobrazit cenu:
price = 49
txt = "The price is {} dollars"
print(txt.format(price))
Do složených závorek můžete přidat parametry, abyste určili, jak převést hodnotu:
Příklad
Naformátujte cenu, která se má zobrazit jako číslo se dvěma desetinnými místy:
txt = "The price is {:.2f} dollars"
Podívejte se na všechny typy formátování v naší Referenční příručce formátu String() .
Více hodnot
Pokud chcete použít více hodnot, stačí přidat další hodnoty do metody format():
print(txt.format(price, itemno, count))
A přidejte další zástupné symboly:
Příklad
quantity = 3
itemno = 567
price = 49
myorder = "I want {} pieces of
item number {} for {:.2f} dollars."
print(myorder.format(quantity, itemno, price))
Indexová čísla
Můžete použít indexová čísla (číslo ve složených závorkách {0}
), abyste se ujistili, že hodnoty jsou umístěny ve správných zástupných symbolech:
Příklad
quantity = 3
itemno = 567
price = 49
myorder = "I want {0} pieces of
item number {1} for {2:.2f} dollars."
print(myorder.format(quantity, itemno, price))
Také, pokud chcete odkazovat na stejnou hodnotu více než jednou, použijte číslo indexu:
Příklad
age = 36
name = "John"
txt = "His name is {1}. {1} is {0} years old."
print(txt.format(age,
name))
Pojmenované indexy
Můžete také použít pojmenované indexy zadáním názvu do složených závorek {carname}
, ale pak musíte použít názvy, když předáváte hodnoty parametrů
txt.format(carname = "Ford")
:
Příklad
myorder = "I have a {carname}, it is a {model}."
print(myorder.format(carname
= "Ford", model = "Mustang"))