Interpolación de cadenas de Python

Interpolación de cadenas de Python

Interpolación de cadenas es el proceso de sustituir valores de variables en marcadores de posición en una cadena. Consideremos un ejemplo para entenderlo mejor, supongamos que desea cambiar el valor de la cadena cada vez que imprime la cadena como si quisiera imprimir hola, bienvenido a geeks para geeks, donde es el marcador de posición para el nombre del usuario. En lugar de crear una nueva cadena cada vez, la interpolación de cadenas en Pitón puede ayudarle a cambiar el marcador de posición con el nombre del usuario de forma dinámica.

Interpolación de cadena de Python-(1)

% – Formato

% – Formato es una característica proporcionada por Python a la que se puede acceder con un operador %. Esto es similar a la función de estilo printf en C.

Ejemplo: Formatear cadena usando el operador %

Python3




n1> => 'Hello'> n2> => 'techcodeview.com'> # for single substitution> print> (> 'Welcome to % s'> %> n2)> # for single and multiple substitutions()> # mandatory> print> (> '% s ! This is % s.'> %> (n1, n2))>

Producción

Welcome to techcodeview.com Hello ! This is techcodeview.com. 

Digamos que es sólo una versión complicada. Aún así, podemos usarlo si tenemos muchas variables para sustituir en la cadena, ya que no siempre queremos usar (cadena + variable + cadena + variable + variable + cadena) esta representación. Entonces, para este propósito, podemos utilizar el formato %.

Nota: Para saber más sobre el formato de porcentaje, consulte Formato de cadenas en Python usando%

formato str()

str.formato() funciona colocando uno o más campos de reemplazo y marcadores de posición definidos por un par de llaves { } en una cadena. El valor que deseamos poner en los marcadores de posición y concatenar con la cadena pasada como parámetros a la función de formato.

Ejemplo: Formatear cadenas usando el método format().

Python3




n1> => 'Hello'> n2> => 'techcodeview.com'> # for single substitution> print> (> '{}, {}'> .> format> (n1, n2))>

Producción

Hello, techcodeview.com 

También podemos usar el nombre de la variable dentro de las llaves {}. Esto nos permitirá utilizar los parámetros de las funciones de formato en el orden que queramos.

Ejemplo: Formatee funciones con variables dentro de llaves.

Python3




n1> => 'Hello'> n2> => 'GeeksForGeeks'> # for single or multiple substitutions> # let's say b1 and b2 are formal parameters> # and n1 and n2 are actual parameters> print> (> '{b1}! This is {b2}.'> .> format> (b1> => n1, b2> => n2))> # we can also change the order of the> # variables in the string without changing> # the parameters of format function> print> (> '{b2}! This is {b1}.'> .> format> (b1> => n1, b2> => n2))>

Producción

Hello! This is GeeksForGeeks. GeeksForGeeks! This is Hello. 

Nota: Para saber más sobre str.format(), consulte función formato() en Python

cuerdas f

PEP 498 introdujo un nuevo mecanismo de formato de cadenas conocido como interpolación de cadenas literales o más comúnmente como cuerdas fa (debido al carácter f inicial que precede al literal de cadena). La idea detrás de f-strings es simplificar la interpolación de cadenas.

Para crear una cadena f, anteponga la letra f a la cadena. La cadena en sí se puede formatear de la misma manera que lo haría con str. formato(). Las cadenas F proporcionan una manera concisa y conveniente de incrustar expresiones de Python dentro de cadenas literales para formatear.

Ejemplo: Formatear cadenas usando cadenas f

Python3




n1> => 'Hello'> n2> => 'techcodeview.com'> # f tells Python to restore the value of two> # string variable name and program inside braces {}> print> (f> '{n1}! This is {n2}'> )>

Producción

Hello! This is techcodeview.com (2 * 3)-10 = -4 

También podemos usar f-strings para calcular algunas operaciones aritméticas y realizará la aritmética en línea. Vea el siguiente ejemplo:

Ejemplo: Aritmética en línea usando cuerdas f

Python3




a> => 2> b> => 3> c> => 10> print> (f> '({a} * {b})-{c} = {(2 * 3)-10}'> )>

Producción

(2 * 3)-10 = -4 

Nota: Para saber más sobre las cuerdas f, consulte cadenas f en Python

Clase de plantilla de cadena

En el módulo String, la clase Template nos permite crear una sintaxis simplificada para la especificación de salida. El formato utiliza nombres de marcadores de posición formados por $ con identificadores Python válidos (caracteres alfanuméricos y guiones bajos). Rodear el marcador de posición entre llaves permite que le sigan más letras alfanuméricas sin espacios intermedios. Escribir $$ crea un único $ escapado:

Ejemplo: Formatear cadena usando la clase de plantilla

Python3




from> string> import> Template> n1> => 'Hello'> n2> => 'techcodeview.com'> # made a template which we used to> # pass two variable so n3 and n4> # formal and n1 and n2 actual> n> => Template(> '$n3 ! This is $n4.'> )> # and pass the parameters into the template string.> print> (n.substitute(n3> => n1, n4> => n2))>

Producción

Hello ! This is techcodeview.com. 

Nota: Para saber más sobre la clase Plantilla de cadena, consulte Clase de plantilla de cadena en Python