Úvod do formátování řetězců v Pythonu

Python se stal jedním z nejdůležitějších jazyků, které se v dnešním technologickém průmyslu mohou naučit. Existuje mnoho důležitých funkcí, které jsou velmi důležité pro psaní efektivního kódu v Pythonu. Jednou z takových metod je formátování řetězců. Nyní je formátování řetězců, jak název napovídá, velmi užitečné, protože pomocí formátu můžeme řetězec skutečně deklarovat a poté vyplnit různé hodnoty v řetězci na různých místech a také se zjednoduší vyplňování a formátování řetězce. Nyní se seznámíme s formátováním řetězce v Pythonu.

Jak formátovat řetězec v Pythonu?

Toto je nejdůležitější část tohoto článku, který je odpovědí na výše uvedenou otázku. Není to tak obtížné formátovat řetězec v Pythonu, protože pro formátování můžeme použít formátovací metodu v Pythonu3. Funkce se snadno používá. Podíváme se na syntaxi této funkce.

Syntax:

(string variable).format(value)

Namísto hodnoty tedy můžeme vložit libovolný řetězec, číselné znaky a dokonce i další proměnné. Tato metoda vrací formátovaný řetězec.

V Pythonu existuje několik způsobů formátování řetězce. Budeme se na to dívat jeden po druhém.

1. Single Formatter

To znamená, že předáme pouze jeden parametr ve formátu funkce, která umístí hodnotu předanou jako parametr na pozici zástupného symbolu. Zástupný symbol je reprezentován složenými závorkami. Protože předáváme pouze jeden parametr uvnitř funkce formátování. Říká se tomu jeden formátovač. Abychom lépe porozuměli, použijeme k prohlížení výstupu notebook Jupyter.

Kód:

#program to demonstrate single Formatter in Python3
#format option for value stored in a variable
str = "Rahul is a nice ()"
print(str.format("boy"))
#format option for simple string
print("Who is inside my ()".format("house"))

Pokud se podíváme na kód, v prvním případě jsme použili dva případy, přiřadíme řetězec proměnné, zatímco ve druhém případě přímo použijeme formátovací funkci řetězce.

Výstup:

Jak vidíte v obou případech, zástupné symboly jsou nahrazeny hodnotami předávanými jako parametr s funkcí formátování.

2. Více formátovačů

V tomto případě bude mít metoda formátování více než jeden parametr. Tento typ formátování se používá, pokud chceme v existujícím řetězci provést více než jednu náhradu proměnné. Budeme muset do řetězce umístit další zástupné symboly, pokud chceme provést více než jednu náhradu proměnné. Zástupné symboly budou nahrazeny hodnotami v pořadí. Například, pokud chceme nahradit dvě hodnoty v řetězci, musíme umístit dva zástupné symboly a předat dva argumenty uvnitř funkce formátování. Uvidíme kód příkladu.

Kód:

#program to demonstrate Multiple Formatter in Python3
#format option for value stored in a variable
str = "Rahul is a nice () and he is ()"
print(str.format("boy", "young"))
#format option for simple string
print("This is () and lots of ()".format("great", "fun"))

Výše uvedený kód má dva případy, v prvním případě řetězec přiřadíme k proměnné, zatímco ve druhém případě přímo použijeme formátovací funkci v řetězci.

Výstup:

Jak vidíte v obou případech, oba zástupné symboly jsou nahrazeny hodnotami předávanými jako parametr s funkcí format a hodnoty jsou nahrazovány v pořadí, které je velmi důležité si pamatovat.

3. Formátory s argumenty pozic a klíčových slov

Toto je zajímavý způsob formátování pomocí formátovacího řetězce. Abychom tomu porozuměli, musíme pochopit, že hodnoty umístěné jako parametry uvnitř funkce format mají jako typ dat tuple, což znamená, že je lze jednotlivě volat pomocí jejich indexového čísla počínaje nulou. Tato čísla indexu mohou být předána v zástupných symbolech původního řetězce a na základě čísla indexu budou hodnoty nahrazeny v zástupných symbolech. Pro lepší pochopení použijeme ukázkový kód. Podívejme se na kód.

Kód:

# formatters with positional key arguments.
# Positional arguments placed in order
print("(0) likes (1)!!".format("Ram", "Radha"))
# Reverse the index numbers
print("(1) likes (0)!!".format("Ram", "Radha"))
# Keyword arguments along with index
print("(name) likes (0)!!".format("Radha", name ="Ram"))

Když se podíváte na výše uvedený kód, můžeme vidět, že jsme použili tři případy v prvních dvou případech jsme použili indexová čísla v zástupných symbolech. Jediným rozdílem mezi prvními dvěma případy je obrácené pořadí indexových čísel, ale ve třetím případě jsme skutečně použili klíčové slovo, které v podstatě znamená proměnnou, jejíž hodnotu přidělujeme uvnitř funkce formátování. Nepoužíváme pouze index, takže můžete vidět, že index je nula, protože první zástupný symbol je nahrazen hodnotou proměnné předané uvnitř funkce formátování.

Výstup:

Výstup z obrazovky nám ukazuje různé případy, kdy můžeme použít tento typ formátování řetězce.

4. Chyba indexu

Je důležité o tom diskutovat, protože bychom si měli uvědomit, že existuje něco, co dostaneme jako chybu indexu, když počet zástupných symbolů předaných v řetězci neodpovídá počtu parametrů uvnitř funkce formátování. Takže bychom například získali chybu indexu, pokud máme tři zástupné symboly pro dva parametry ve formátu.

Kód:

str = "Rahul is a nice () and he is (), ()"
print(str.format("boy", "young"))

Jak vidíte, máme zvláštní zástupný symbol.

Výstup:

Jak vidíte, došlo k chybě indexu se zprávou „tuple index out of range“.

Doporučené články

Toto je průvodce formátováním řetězce v Pythonu. Zde diskutujeme koncept a jak formátovat řetězec v Pythonu implementací kódu. Další informace naleznete také v následujících článcích -

  1. Různí editoři Pythonu
  2. Fibonacciho série v Pythonu
  3. Logika pro reverzní číslo v Pythonu
  4. Příklady Destructor v Pythonu
  5. Typ dat úlu
  6. Top 8 Srovnání String vs StringBuilder
  7. Generování série Fibonacci s příkladem

Kategorie: