logo

Què significa %s en una cadena de format Python?

El símbol % s'utilitza a Python amb una gran varietat de tipus de dades i configuracions. %s s'utilitza específicament per realitzar la concatenació de cadenes juntes. Ens permet formatar un valor dins d'una cadena. S'utilitza per incorporar una altra cadena dins d'una cadena. Proporciona automàticament la conversió de tipus de valor a cadena.

L'operador %s es posa on s'ha d'especificar la cadena. El nombre de valors que voleu afegir a una cadena ha de ser equivalent al nombre especificat entre parèntesis després de l'operador % al final del valor de la cadena.

El codi Python següent il·lustra la manera de realitzar el format de cadena.



Ús senzill de %s

Python 3




# declaring a string variable> name>=> 'Geek'> # append a string within a string> print>(>'Hey, %s!'> %> name)>

>

>

Sortida

Hey, Geek!>

Diversos %s

També es poden afegir diverses cadenes dins d'una única cadena utilitzant l'operador %s. Les cadenes es substitueixen en l'ordre de la seva posició entre claudàtors, sempre que hi hagi un signe %s. Això s'il·lustra amb el següent fragment de codi:

Python 3




preity zinta
# declaring a string variable> var1>=> 'Geek!'> var2>=> 'Geeks for Geeks'> # append multiple strings within a string> print>(>'Hello %s Are you enjoying being at %s for preparations.'> %> (var1, var2))>

>

>

Sortida

Hola Geek! Estàs gaudint d'estar a Geeks for Geeks per preparar-te.

Assignació de cadenes a %s

Tanmateix, el nombre d'ocurrències d'aquest operador ha de ser igual al nombre de cadenes per substituir després del signe %. En cas contrari, es produeix un error del tipus TypeError: no hi ha prou arguments per a la cadena de format.

Python 3




# declaring string variables> str1>=> 'Understanding'> str2>=> '%s'> str3>=> 'at'> str4>=> 'techcodeview.com'> # concatenating strings but %s not equal to string variables> final_str>=> '%s %s %s %s'> %> (str1, str3, str4)> # printing the final string> print>(>'Concatenating multiple strings using Python '%s' operator: '>)> print>(final_str)>

>

>

Error

Traceback (última trucada):

Fitxer /home/c7b65fabd2ad00163eba70bbc39685d3.py, línia 8, a

final_str = %s %s %s %s % (str1, str3, str4)

TypeError: no hi ha prou arguments per a la cadena de format

Codi correcte

Python 3




# declaring string variables> str1>=> 'Understanding'> str2>=> '%s'> str3>=> 'at'> str4>=> 'techcodeview.com'> # concatenating strings> final_str>=> '%s %s %s %s'> %> (str1, str2, str3, str4)> # printing the final string> print>(>'Concatenating multiple strings using Python '%s' operator: '>)> print>(final_str)>

>

>

Sortida

Concatenating multiple strings using Python '%s' operator: Understanding %s at techcodeview.com>

Ordena %s utilitzant el diccionari

Les cadenes s'imprimeixen en qualsevol ordre en què s'afegeixin utilitzant la clau del diccionari a la sortida.

Python 3




# declaring string variables with dictionary> dct>=> {>'str1'>:>'at'>,> >'str2'>:>'techcodeview.com'>,> >'str3'>:>'Understanding'>,> >'str4'>:>'%s'>}> # concatenating strings> final_str>=> '%(str3)s %(str4)s %(str1)s %(str2)s'> %> dct> # printing the final string> print>(>'Concatenating multiple strings using Python '%s' operator: '>)> print>(final_str)>

>

>

Sortida

què és uri
Concatenating multiple strings using Python '%s' operator: Understanding %s at techcodeview.com>

Llista com a cadena per a %s

També es pot formatar un operador que no sigui de cadena utilitzant el símbol %s a Python. Les tuples també es poden inserir i formatar amb aquest operador.

Python 3




# declaring string variables> str1>=> 'Understanding'> str2>=> 'integers'> str3>=> 'at'> str4>=> 'techcodeview.com = '> # declaring list variables> lst>=> [>1>,>2>,>3>]> # concatenating strings as well as list> final_str>=> '%s %s %s %s %s'> %> (str1, str2, str3, str4, lst)> # printing the final string> print>(>'Concatenating multiple values using Python '%s' operator: '>)> print>(final_str)>

>

>

Sortida

Concatenating multiple values using Python '%s' operator: Understanding integers at techcodeview.com = [1, 2, 3]>