logo

Python %s - Formátování řetězce

V tomto tutoriálu se naučíme, jak můžeme implementovat a používat %s v našem programu Python. Naučíme se také použití %s v řetězcích.

co je mapa java

%s ve formátu řetězce v Pythonu

V zásadě se symbol % používá s velkým množstvím dat s mnoha datovými typy a konfiguracemi v Pythonu.

Když mluvíme o %s, konkrétně se používá k provádění zřetězení dvou nebo více řetězců dohromady v Pythonu. %s nám umožňuje formátovat nebo umístit řetězec nebo číselnou hodnotu do daného řetězce. V jednoduchém jazyce se %s v Pythonu používá k začlenění daného řetězce do jiného řetězce. Tento operátor automaticky poskytuje typovou konverzi dané hodnoty na datový typ řetězce.

Vložíme operátor %, kde musíme zadat řetězec. Počty hodnot, které chceme do daného řetězce připojit, by se měly rovnat počtu %s operátorů, které byly uvedeny v závorkách mezi řetězci.

Následující Krajta kód vysvětlí způsob, jakým provádíme formátování řetězce pomocí operátoru %s:

Příklad -

 # Define a string value str = 'JavaTpoint!' # using %s to appending string print('Hello Python developers! Welcome to, %s!' % str) 

Výstup:

 Hello Python developers! Welcome to, JavaTpoint! 

Jak můžeme vidět ve výše uvedeném kódu, deklarovali jsme řetězcovou proměnnou, tj. str, a přidali ji do daného řetězce v závorkách. Hodnotu řetězce str jsme přidali pomocí operátoru %s.

Použití operátoru %s v Pythonu

V této části probereme zvýrazněná použití operátoru %s. Naučíme se také implementaci operátoru %s více přístupy a jak je pro nás užitečný.

Budeme diskutovat o následujících přístupech implementace %s:

  1. Více %s v řetězci
  2. Použití %s pro mapovací řetězec
  3. Použití %s pro seznam jako řetězec
  4. Objednat slovník s %s

1. Více %s v řetězci:

Operátor %s můžeme použít k připojení dané řetězcové proměnné do řetězce tak, že ji vložíme tam, kde chceme přidat hodnotu. Python jednoduše přidá proměnné řetězce tam, kde jsme v řetězci použili operátor %s. Projdeme si příklad, abychom to pochopili.

Příklad: Podívejte se na následující kód:

 # Declaring multiple string values mkr1 = 'developers' mkr2 = 'JavaTpoint' mkr3 = 'day' # Appending multiple string values inside a single string print('Hello Python %s, Welcome to the %s! We hope you are having a good %s.' % (mkr1, mkr2, mkr3)) 

Výstup:

 Hello Python developers, Welcome to the JavaTpoint! We hope you are having a good day. 

Vysvětlení -

Připojili jsme několik řetězcových proměnných (mkr1, mkr2, mkr3) do jednoho řetězce a vytiskli řetězec. Tyto proměnné jsme přidali jednoduchým použitím operátoru %s vícekrát v rámci řetězce.

2. Použití %s pro mapovací řetězec:

Pro mapování řetězce v rámci daného programu můžeme také použít operátor %s. Můžeme mapovat více řetězcových proměnných do jednoho řetězce jednoduchým vícenásobným použitím operátorů %s. Pokud však chceme přidat více řetězcových proměnných do jednoho řetězce, musíme porovnat počet výskytů %s v řetězci s počtem řetězců, které jej mají nahradit. Tento počet řetězců musíme přidat za operátor %.

Příklad: 1

 # Declaring multiple string variables mkr1 = 'Hey' mkr2 = 'Python' mkr3 = 'Developers' mkr4 = 'Welcome' mkr5 = 'to' mkr6 = 'JavaTpoint' # Mapping multiple string variables into a single string ResultantStr = '%s %s %s %s %s %s' % (mkr1, mkr2, mkr3, mkr4, mkr5, mkr6) # Printing result in output print('Resultant mapped string using '%s' operator: ') print(ResultantStr) 

Výstup:

 Resultant mapped string using '%s' operator: Hey Python Developers Welcome to JavaTpoint 

Poznámka: Pokud však za operátorem % nezadáme stejný počet řetězcových proměnných jako operátor %s, který jsme použili, pak kód projde TypeError ve výstupu jako v následujícím programu:

Příklad - 2

 # Declaring multiple string variables mkr1 = 'Hey' mkr2 = 'Python' mkr3 = 'Developers' mkr4 = 'Welcome' mkr5 = 'to' mkr6 = 'JavaTpoint' # Not giving equal number of variables after % operator ResultantStr = '%s %s %s %s %s %s' % (mkr1, mkr2, mkr4, mkr5, mkr6) # Printing result in output print('Resultant mapped string using '%s' operator: ') print(ResultantStr) 

Výstup:

 Traceback (most recent call last): File 'C:UsersManishDownloadscode.py', line 9, in ResultantStr = '%s %s %s %s %s %s' % (mkr1, mkr2, mkr4, mkr5, mkr6) TypeError: not enough arguments for format string 

3. Použití %s pro seznam jako řetězec:

Pomocí operátoru %s můžeme také namapovat danou proměnnou datového typu seznamu s řetězcovými proměnnými do jednoho řetězce. Musíme se řídit stejnou sadou instrukcí, jakými se řídíme při mapování řetězcových proměnných. Projdeme si příklad, abychom to pochopili.

Příklad:

 # Declaring multiple string variables mkr1 = 'Hey' mkr2 = 'Python' mkr3 = 'Developers' mkr4 = 'Welcome' mkr5 = 'to' mkr6 = 'JavaTpoint' # Declaring a list variable also AList = ['Java', 'Python', 'C++', 'HTML', 'JavaScript'] # Mapping string variables with list variable into a single string ResultantStr = '%s %s %s %s %s %s, %s' % (mkr1, mkr2, mkr3, mkr4, mkr5, mkr6, AList) # Printing result in output print('Resultant mapped string with list variable in it: ') print(ResultantStr) 

Výstup:

 Resultant mapped string with list variable in it: Hey Python Developers Welcome to JavaTpoint, ['Java', 'Python', 'C++', 'HTML', 'JavaScript'] 

4. Objednejte slovník pomocí %s:

Uvnitř proměnné datového typu slovníku můžeme definovat více řetězcových proměnných. Potom můžeme tyto řetězcové proměnné vyvolat v požadovaném pořadí, pouze pomocí operátoru %s s názvem řetězcové proměnné.

Příklad:

 # Declaring a dict variable with multiple string variable in it ADict = {'mkr1': 'at', 'mkr2': 'JavaTpoint', 'mkr3': 'Learning', 'mkr4':'operator', 'mkr5':'concept', 'mkr6': '%s'} # Mapping a string with string variables in dictionary ResultantStr = '%(mkr3)s %(mkr6)s %(mkr4)s %(mkr5)s %(mkr1)s %(mkr2)s' % ADict # Printing result in output print('Resultant mapped string with ordered variable from dictionary: ') print(ResultantStr) 

Výstup:

 Resultant mapped string with ordered variable from dictionary: Learning %s operator concept at JavaTpoint