logo

Python %s - Formato de cadenas

En este tutorial, aprenderemos cómo podemos implementar y usar %s en nuestro programa Python. También aprenderemos los usos de %s en las cadenas.

buscador y ejemplos

%s en formato de cadena en Python

Básicamente, el símbolo % se usa con una gran variedad de datos que tienen muchos tipos de datos y configuraciones en Python.

Hablando de %s, se usa específicamente para realizar la concatenación de dos o más cadenas juntas en Python. El %s nos permite formatear o colocar una cadena o valor numérico dentro de una cadena determinada. En lenguaje sencillo, %s en Python se utiliza para incorporar una cadena determinada dentro de otra cadena. Este operador proporciona automáticamente la conversión de tipo de un valor determinado a un tipo de datos de cadena.

Ponemos el operador %, donde tenemos que especificar la cadena. La cantidad de valores que queremos agregar a la cadena dada debe ser igual a la cantidad de operadores %s que se han especificado entre paréntesis entre las cadenas.

La siguiente Pitón El código explicará la forma en que realizamos el formateo de cadenas usando el operador %s:

Ejemplo -

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

Producción:

 Hello Python developers! Welcome to, JavaTpoint! 

Como podemos ver en el código anterior, hemos declarado una variable de cadena, es decir, str, y la agregamos dentro de la cadena dada entre paréntesis. Agregamos el valor de la cadena str usando el operador %s.

Usos del operador %s en Python

En esta sección, discutiremos los usos destacados del operador %s. También aprenderemos la implementación del operador %s mediante múltiples enfoques y cómo nos resulta útil.

Discutiremos los siguientes enfoques para implementar %s:

  1. Múltiples %s en una cadena
  2. Usando %s para mapear cadenas
  3. Usando %s para una lista como una cadena
  4. Ordenar diccionario con %s

1. Varios %s en una cadena:

Podemos usar el operador %s para agregar la variable de cadena dada dentro de una cadena colocándola donde queremos agregar el valor. Python simplemente agregará las variables de cadena donde hemos usado el operador %s en la cadena. Veamos un ejemplo para entenderlo.

Ejemplo: mire el siguiente código:

 # 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)) 

Producción:

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

Explicación -

Agregamos múltiples variables de cadena (mkr1, mkr2, mkr3) dentro de una sola cadena e imprimimos la cadena. Hemos agregado estas variables simplemente usando el operador %s varias veces dentro de la cadena.

2. Usando %s para mapear cadenas:

También podemos usar el operador %s para mapear la cadena dentro del programa dado. Podemos asignar múltiples variables de cadena a una sola cadena simplemente usando operadores %s varias veces. Sin embargo, cuando queremos agregar varias variables de cadena en una sola cadena, debemos hacer coincidir la cantidad de apariciones de %s en la cadena con la cantidad de cadenas para reemplazarla. Tenemos que agregar esa cantidad de cadenas después del operador %.

Ejemplo 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) 

Producción:

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

Nota: Pero, si no damos la misma cantidad de variables de cadena después del operador %, que el operador %s que hemos usado, entonces el código generará un TypeError en la salida como el siguiente programa:

Ejemplo - 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) 

Producción:

 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. Usar %s para una lista como una cadena:

Con la ayuda del operador %s, también podemos asignar una variable de tipo de datos de lista determinada con las variables de cadena para formar una sola cadena. Tenemos que seguir el mismo conjunto de instrucciones que seguimos al asignar variables de cadena. Veamos un ejemplo para entenderlo.

Ejemplo:

 # 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) 

Producción:

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

4. Ordenar diccionario con %s:

Podemos definir múltiples variables de cadena dentro de una variable de tipo de datos de diccionario. Luego, podemos llamar estas variables de cadena en el orden que queramos, simplemente usando el operador %s con el nombre de la variable de cadena.

Ejemplo:

 # 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) 

Producción:

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