Co je to Python String format ()?
Python String format () je funkce používaná k nahrazení, nahrazení nebo převodu řetězce zástupnými symboly s platnými hodnotami v posledním řetězci. Je to vestavěná funkce třídy řetězce Pythonu, která vrací formátovaný řetězec jako výstup. Zástupné symboly uvnitř řetězce jsou definovány v složených závorkách.
Například formát „Vítejte na Guru99 {}“. („Hodnota zde“).
V tomto výukovém programu se naučíte:
- Co je to Python String format ()?
- Syntaxe funkce format () v Pythonu
- Jak funguje formát řetězce ()?
- Příklad: Prázdný zástupný symbol nahrazen řetězcovou hodnotou
- Příklad: Prázdný zástupný symbol nahrazen číselnou hodnotou
- Příklad: Použití argumentů proměnných nebo klíčových slov uvnitř zástupného symbolu
- Příklad: Použití indexových nebo pozičních argumentů uvnitř zástupného symbolu
- Formátování uvnitř zástupných symbolů
- Používání třídy s format ()
- Používání slovníku s format ()
- Variabilní substituce polstrování
Syntaxe funkce format () v Pythonu
templatestring.format(val1, val2… )
Parametry
val1, val2…: Hodnoty, které je třeba nahradit v daném řetězci šablony, který má zástupné symboly ve formě složených závorek {}. Zástupnými symboly mohou být řetězec, pár klíč / hodnota, celá čísla, čísla s plovoucí desetinnou čárkou, znaky atd.
Návratová hodnota:
Vrátí poslední řetězec s platnými hodnotami nahrazenými místo zástupných znaků uvedených ve složených závorkách.
Zástupné symboly
Zástupné symboly v řetězci šablony jsou reprezentovány pomocí složených závorek, např. {}. Zástupný symbol může být prázdný {}, nebo může mít proměnnou např. {Name}, nebo může mít index čísel, např. {0}, {1} atd.
Jak funguje formát řetězce ()?
Metoda Python String format () prohledá původní řetězce na zástupné symboly. Zástupnými symboly mohou být prázdné složené závorky ({}), poziční argumenty, tj. Řetězec může obsahovat zástupné symboly s indexem 0, 1, např. {0}, {1} atd.
U argumentů klíčových slov bude název proměnné přítomen uvnitř složených závorek např. {Name}, {age}. V případě prázdných složených závorek budou hodnoty z formátu nahrazeny uvnitř složených závorek v pořadí.
První hodnota bude nahrazena první prázdnou složenou závorkou, následovanou další. U pozičních argumentů bude index začínat od 0 atd. Hodnoty budou k dispozici ve formátu oddělený čárkami a 0 th hodnota bude ukazovat na první hodnotu uvnitř formátu a tak dále.
U argumentů klíčových slov, tj. Když použijete proměnnou uvnitř zástupných symbolů, můžete mít pořadí hodnot uvnitř formátu, jak potřebujete.
Na pořadí zde nezáleží, protože hodnoty budou nahrazeny na základě názvu proměnné ve formátu (). Zde je několik příkladů, jak používat zástupné symboly uvnitř řetězce jako prázdné, poziční a pomocí klíčových slov nebo proměnných.
Příklad: Prázdný zástupný symbol nahrazen řetězcovou hodnotou
V níže uvedeném příkladu má řetězec prázdné složené závorky ({}). Hodnota daná formátu bude nahrazena uvnitř složených závorek ({}).
Hodnota, kterou chceme nahradit, je řetězec.
Příklad:
Pomocí formátování řetězců v Pythonu chceme, aby byly složené závorky ({}) nahrazeny řetězcovou hodnotou. Hodnota je dána formátu („Guru99“). Při provádění jsou složené závorky {} nahrazeny Guru99 a výsledný řetězec získáte jako návody Vítejte v Guru99.
print ("Welcome to {} tutorials".format("Guru99"))
Výstup:
Welcome to Guru99 tutorials
Příklad: Prázdný zástupný symbol nahrazen číselnou hodnotou
V níže uvedeném příkladu chceme, aby byla číselná hodnota nahrazena uvnitř původního řetězce. Kudrnaté závorky ({}) se přidají na místo, kde potřebujete číselnou hodnotu. Po provedení se prázdné složené závorky ({}) nahradí číselnou hodnotou.
Příklad:
Můžete také použít format () k vložení čísel do řetězce. Příklad ukáže, jak nahradit prázdný zástupný symbol {} číslem 99 přítomným uvnitř format ().
print ("Welcome to Guru{} Tutorials".format("99"))
Výstup:
Welcome to Guru99 Tutorials
Příklad: Použití argumentů proměnných nebo klíčových slov uvnitř zástupného symbolu
Je také možné použít proměnné uvnitř složených závorek, jak je znázorněno v následujícím příkladu. Proměnné jsou definovány uvnitř format (). Když se tedy provede, hodnota přiřazená proměnné se nahradí uvnitř původního řetězce.
Příklad:
Můžete použít proměnné uvnitř složených závorek, například {name} {num}. Hodnoty pro name a num variable jsou k dispozici ve formátu tj. Format (name = "Guru", num = "99"). Hodnoty dané name a num budou nahrazeny uvnitř {name} a {num}.
print ("Welcome to {name}{num} Tutorials".format(name="Guru", num="99"))
Výstup:
Welcome to Guru99 Tutorials
Příklad: Použití indexových nebo pozičních argumentů uvnitř zástupného symbolu
Hodnoty lze nahradit pomocí indexů jako 0, 1, 2 uvnitř zástupných symbolů. Hodnota bude vybrána v pořadí z format (), jak je znázorněno v níže uvedeném příkladu.
Příklad:
print ("Welcome to {0}{1} Tutorials".format("Guru","99"))
Výstup:
Welcome to Guru99 Tutorials
Příklad: Použití více zástupných znaků uvnitř řetězce
V tomto příkladu použijeme několik prázdných zástupných znaků.
Příklad:
Řetězec použitý v příkladu má několik prázdných zástupných symbolů a každý zástupný symbol bude odkazovat na hodnotu uvnitř format (). První hodnota bude nahrazena pro první zástupný symbol atd.
print ("{} is {} new kind of {} experience!".format("Guru99", "totally","learning"))
Výstup:
Guru99 is totally new kind of learning experience!
Formátování uvnitř zástupných symbolů
Viděli jste, že je možné mít zástupný symbol prázdný, s proměnnou nebo indexem. Je také možné, že můžete použít Python String Formatting uvnitř zástupného symbolu.
Zde je seznam formátů
Formát | Popis | Příklad |
---|---|---|
: d | Při použití uvnitř zástupného symbolu poskytne výstup v desítkovém formátu | print("The binary to decimal value is : {:d}".format(0b0011)) Výstup:
The binary to decimal value is : 3 |
: b | Při použití uvnitř zástupného symbolu poskytne výstup v binárním formátu | print("The binary value is : {:b}".format(500)) Výstup:
The binary value is : 111110100 |
:E | Při použití uvnitř zástupného symbolu poskytne výstup ve vědeckém formátu, exponent e ve výstupu bude malá. | print("The scientific value is : {:e}".format(40)) Výstup:
The scientific format value is : 4.000000e+01 |
:E | Při použití uvnitř zástupného symbolu poskytne výstup ve vědeckém formátu, exponent E ve výstupu bude velká | print("The scientific value is : {:E}".format(40)) Výstup:
The scientific value is : 4.000000E+01 |
:F | Tím se vygeneruje formát čísla s pevným bodem. Ve výchozím nastavení získáte výstup libovolného čísla se šesti desetinnými místy. Pokud potřebujete až 2 desetinná místa, použijte jako. 2f tj. ... tečka (.) Před 2f | print("The value is : {:f}".format(40)) Výstup:
The value is : 40.000000Příklad: Zobrazení výstupu až na 2 desetinná místa. print("The value is : {:.2f}".format(40)) Výstup:
The value is: 40.00 |
:Ó | Tím se vygeneruje osmičkový formát | print("The value is : {:o}".format(500)) Výstup:
The value is : 764 |
:X | Tím se zobrazí hexadecimální formát malými písmeny | print("The value is : {:x}".format(500)) Výstup:
The value is : 1f4 |
:X | Tím se vygeneruje hexadecimální formát velkými písmeny. | print("The value is : {:X}".format(500)) Výstup:
The value is : 1F4 |
: n | Tím se vygeneruje formát čísla. | print("The value is : {:n}".format(500.00)) Výstup:
The value is : 500 |
:% | Tím získáte výstup v procentním formátu. Ve výchozím nastavení udává 6 desetinných míst pro procentuální výstup, v případě, že nechcete žádnou desetinnou hodnotu, můžete použít období s 0 tj. (: .0%). | print("The value is : {:%}".format(0.80)) Výstup:
The value is : 80.000000%Tento příklad ukazuje, jak přeskočit desetinná místa pomocí {: .0%} uvnitř zástupného symbolu. print("The value is : {:.0%}".format(0.80)) Výstup:
The value is: 80% |
: _ | Tím se vytvoří podtržítko jako oddělovač tisíců. Je k dispozici od pythonu 3.6+. | print("The value is {:_}".format(1000000)) Výstup:
The value is : 1_000_000 |
:, | Tím se vydá čárka jako oddělovač tisíců | print("The value is : {:,}".format(1000000)) Výstup:
The value is : 1,000,000Čárka (,) se přidá jako oddělovač tisíců, jak je znázorněno na výstupu. |
: | Tím přidáte mezeru před kladná čísla | Tento příklad ukazuje, jak přidat mezeru nebo polstrování před dané číslo. Číslo 5 označuje požadovaný počet mezer před číslem. print("The value is: {:5}".format(40)) Výstup:
The value is: 40 |
: - | Tím se před záporná čísla přidá znaménko minus | Příklad ukazuje, jak získat výstup se znaménkem minus (-) před číslem pomocí {: -}. print("The value is: {:-}".format(-40)) Výstup:
The value is: -40 |
: + | K označení kladného čísla můžete použít znaménko plus | Příklad ukazuje, jak získat výstup se znaménkem plus (+) před číslem pomocí {: +}. print("The value is: {:+}".format(40)) Výstup:
The value is: +40 |
: = | Stejná hodnota se používá k umístění znaménka +/- na levé straně. | Příklad ukazuje, jak získat výstup se znaménkem plus (+/-) před rovným znaku pomocí {: =}. print("The value is {:=}".format(-40)) Výstup:
The value is -40 |
: | To vycentruje konečný výsledek | Příklad ukazuje použití {: ^} k zarovnání textu na střed. Číslo 10 se používá k přidání 10 mezer k zobrazení zarovnání na střed, když je hodnota nahrazena. print("The value {:^10} is positive value".format(40)) Výstup:
The value 40 is a positive valueZde můžete použít 10, které do konečného textu přidají 10 mezer, a hodnota, která má být nahrazena, bude zarovnána na střed mezi 10 mezerami. Mezery 10 se přidají jen proto, aby se zobrazilo středové vyrovnání nahrazené hodnoty. |
:> | Tím se konečný výsledek zarovná doprava | Prostor 10 je přidán pomocí (:> 10) a nahrazená hodnota je zarovnána doprava. print("The value {:>10} is positive value".format(40)) Výstup:
The value 40 is positive value |
: < | To ponechá zarovnat konečný výsledek | Prostor 10 je přidán pomocí (: <10) a nahrazená hodnota je zarovnána doleva. print("The value {:<10} is positive value".format(40)) Výstup:
The value 40 is positive value |
Používání třídy s format ()
V tomto příkladu vytváříme třídu a používáme objekt třídy uvnitř metody .format Python. Zástupné symboly budou odkazovat na vlastnosti třídy nebo členy používající objekt třídy.
Příklad:
Třída se nazývá uvnitř formátu (c = MyClass ()). Objekt c bude mít odkaz na vlastnosti a metody uvnitř třídy MyClass ().
class MyClass:msg1="Guru"msg2="Tutorials"print("Welcome to {c.msg1}99 {c.msg2}!".format(c=MyClass()))
Výstup:
Welcome to Guru99 Tutorials!
Používání slovníku s format ()
Je také možné použít slovník uvnitř format (), jak je znázorněno v následujícím příkladu:
my_dict = {'msg1': "Welcome", 'msg2': 'Guru99'}print("{m[msg1]} to {m[msg2]} Tutorials!".format(m=my_dict))
Výstup:
Welcome to Guru99 Tutorials!
Variabilní substituce polstrování
Pomocí metody string.format () můžete přidat výplň a mezeru pomocí zástupných symbolů uvnitř řetězce.
Příklad:
V níže uvedeném příkladu přidáte prostor uvnitř zástupného symbolu pomocí format (). Chcete-li přidat mezeru, musíte zadat počet mezer uvnitř složených závorek za dvojtečkou (:). Zástupný symbol tedy bude vypadat jako {: 5}.
print("I have {:5} dogs and {:5} cat".format(2,1))
Výstup:
I have 2 dogs and 1 cat
Index můžete také uvést do zástupného symbolu, například: {0: 5} kde 0 bude odkazovat na první hodnotu ve formátu.
print("I have {0:5} dogs and {1:5} cat".format(2,1))
Výstup:
I have 2 dogs and 1 cat
souhrn
- Třída řetězce Pythonu nám poskytuje důležitý vestavěný příkaz s názvem format (), který nám pomáhá nahradit, nahradit nebo převést řetězec zástupnými symboly s platnými hodnotami v posledním řetězci.
- Zástupné symboly uvnitř řetězcového modulu Python jsou definovány v složených závorkách, např. Formát „Vítejte v Guru99 {}“. („Hodnota zde“).
- Zástupný symbol může být prázdný {}, nebo může mít proměnnou např. {Name}, nebo může mít index čísel, např. {0}, {1} atd.
- Můžete použít formátování řetězců v Pythonu uvnitř zástupných symbolů, které mohou pomoci přidat výplň, zarovnat na střed a také pomoci s formátováním čísel.