Formato de cadena de Python() Explicar con EJEMPLOS

¿Qué es el formato de cadena Python()?

Formato de cadena de Python() es una función utilizada para reemplazar, sustituir o convertir la cadena con marcadores de posición con valores válidos en la cadena final. Es una función incorporada de la clase de cadena de Python, que devuelve la cadena formateada como salida. Los marcadores de posición dentro de la cadena están definidos en rizado. brackets.

Por ejemplo, "Bienvenido a Guru99 {}".format('valor aquí').

Sintaxis de la función format() en Python

templatestring.format(val1, val2...)

parámetros

val1, val2…: Los valores que deben reemplazarse en la cadena de plantilla dada que tiene marcadores de posición en forma de rizado brackets {}. Los marcadores de posición pueden ser una cadena, un par clave/valor, números enteros, números de punto flotante, caracteres, etc.

Valor de retorno

Devolverá la cadena final, con los valores válidos reemplazados en lugar de los marcadores de posición dados en rizado. brackets.

Marcadores de posición

Los marcadores de posición en la cadena de plantilla se representan usando rizado brackets, p.ej {}. El marcador de posición puede estar vacío {}, o puede tener una variable, por ejemplo, {nombre}, o puede tener un índice numérico, por ejemplo, {0}, {1}, etc.

¿Cómo funciona el formato de cadena()?

El Formato de cadena de Python() El método escaneará las cadenas originales en busca de marcadores de posición. Los marcadores de posición pueden estar vacíos y rizados. brackets ({}), argumentos posicionales, es decir, la cadena puede tener marcadores de posición con índice 0, 1, por ejemplo, {0}, {1}, etc.

Para argumentos de palabras clave, el nombre de la variable estará presente dentro del rizado brackets por ejemplo, {nombre}, {edad}. En el caso de rizado vacío. brackets, los valores del formato se reemplazarán dentro del rizado brackets en secuencia.

El primer valor será reemplazado por la primera llave vacía, seguida por la siguiente. Para argumentos posicionales, el índice comenzará desde 0 y así sucesivamente. Los valores estarán disponibles en formato separados por comas, y el 0th value apuntará al primer valor dentro del formato y así sucesivamente.

Para los argumentos de palabras clave, es decir, cuando usa una variable dentro de sus marcadores de posición, puede tener el orden de los valores dentro del formato que necesite.

El orden no importa aquí ya que los valores se reemplazarán según el nombre de la variable presente en el formato(). A continuación se muestran algunos ejemplos de cómo usar marcadores de posición dentro de una cadena como vacíos, posicionales y usando palabras clave o variables.

Ejemplo: marcador de posición vacío reemplazado por un valor de cadena

En el siguiente ejemplo, la cadena tiene rizado vacío brackets({}). El valor dado al formato será reemplazado dentro del rizado brackets({}).

El valor que queremos reemplazar es una cadena.

Ejemplo:

Usando el formato de cadena en Python, queremos el rizado brackets ({}) se reemplazará con un valor de cadena. El valor se da al formato ("Guru99"). En la ejecución, el rizado brackets {} se reemplaza con Guru99 y obtendrá la cadena final como Bienvenido a los tutoriales de Guru99.

print ("Welcome to {} tutorials".format("Guru99"))

Salida:

Welcome to Guru99 tutorials

Ejemplo: marcador de posición vacío reemplazado por un valor numérico

En el siguiente ejemplo, queremos que el valor numérico se reemplace dentro de la cadena original. el rizado brackets({}) se agregan al lugar donde necesita el valor numérico. Cuando se ejecuta, el rizado vacío brackets ({}) se reemplaza con el valor numérico.

Ejemplo:

También puedes utilizar format() para insertar números dentro de tu cadena. El ejemplo mostrará cómo reemplazar el marcador de posición vacío {} con el número 99 presente dentro del formato().

print ("Welcome to Guru{} Tutorials".format("99"))

Salida:

Welcome to Guru99 Tutorials

Ejemplo: uso de argumentos variables o de palabras clave dentro del marcador de posición

También es posible hacer uso de variables dentro del rizado. brackets, como se muestra en el siguiente ejemplo. Las variables se definen dentro del formato(). Por lo tanto, cuando se ejecuta, el valor asignado a la variable se reemplaza dentro de la cadena original.

Ejemplo:

Puedes usar variables dentro de curly brackets por ejemplo {nombre} {num}. Los valores para nombre y variable num están disponibles dentro del formato, es decir, formato (nombre = "Guru", num = "99"). Los valores dados a nombre y número se reemplazarán dentro de {nombre} y {num}.

print ("Welcome to {name}{num} Tutorials".format(name="Guru", num="99"))

Salida:

Welcome to Guru99 Tutorials

Ejemplo: uso de índices o argumentos posicionales dentro del marcador de posición

Los valores se pueden reemplazar usando índices como 0, 1, 2 dentro de los marcadores de posición. El valor se seleccionará en orden a partir del formato(), como se muestra en el siguiente ejemplo.

Ejemplo:

print ("Welcome to {0}{1} Tutorials".format("Guru","99"))

Salida:

Welcome to Guru99 Tutorials

Ejemplo: usar varios marcadores de posición dentro de una cadena

En este ejemplo, utilizaremos varios marcadores de posición vacíos.

Ejemplo:

La cadena utilizada en el ejemplo tiene varios marcadores de posición vacíos y cada marcador de posición hará referencia a un valor dentro de format(). El primer valor se reemplazará por el primer marcador de posición y así sucesivamente.

print ("{} is {} new kind of {} experience!".format("Guru99", "totally","learning"))

Salida:

Guru99 is totally new kind of learning experience!

Formato dentro de marcadores de posición

Has visto que es posible tener Placeholder vacío, con una variable o un índice. También es posible que puedas aplicar el formato de cadena de Python dentro del marcador de posición.

Aquí está la lista de formatos.

Formato Descripción Ejemplo
:d Dará la salida en formato decimal cuando se use dentro del marcador de posición. print("The binary to decimal value is : {:d}".format(0b0011))

Salida:

The binary to decimal value is  : 3
:b Dará la salida en formato binario cuando se use dentro del marcador de posición. print("The binary value is : {:b}".format(500))

Salida:

The binary value is : 111110100
:e Dará el resultado en formato científico cuando se use dentro del marcador de posición, el exponente e en el resultado estará en minúscula. print("The scientific value is : {:e}".format(40))

Salida:

The scientific format value is : 4.000000e+01
:E Dará el resultado en formato científico cuando se use dentro del marcador de posición, el exponente E en el resultado estará en mayúsculas. print("The scientific value is : {:E}".format(40))

Salida:

The scientific value is : 4.000000E+01
:f Esto generará un formato de número de punto fijo. De forma predeterminada, obtendrá el resultado de cualquier número con seis decimales. En caso de que necesites hasta 2 decimales, úsalo como. 2f es decir, un punto (.) delante de 2f print("The value is : {:f}".format(40))

Salida:

The value is  : 40.000000

Ejemplo: Showing Salida con hasta 2 decimales.

print("The value is : {:.2f}".format(40))

Salida:

The value is: 40.00
:o Esto generará formato octal. print("The value is : {:o}".format(500))

Salida:

The value is  : 764
:x Esto generará formato hexadecimal en minúsculas. print("The value is : {:x}".format(500))

Salida:

The value is  : 1f4
:X Esto generará formato hexadecimal en mayúsculas. print("The value is : {:X}".format(500))

Salida:

The value is  : 1F4
:n Esto generará el formato del número. print("The value is : {:n}".format(500.00))

Salida:

The value is  : 500
:% Esto dará el resultado en formato porcentual.
De forma predeterminada, proporcionará 6 decimales para la salida porcentual; en caso de que no desee ningún valor decimal, puede usar un punto con 0, es decir (:.0%).
print("The value is : {:%}".format(0.80))

Salida:

The value is  : 80.000000%

Este ejemplo muestra cómo omitir los decimales usando {:.0%} dentro del marcador de posición.

print("The value is : {:.0%}".format(0.80))
Salida:

The value is: 80%
:_ Esto generará un guión bajo como separador de mil. Está disponible desde Python 3.6+. print("The value is {:_}".format(1000000))

Salida:

The value is  : 1_000_000
:, Esto generará una coma como separador de miles. print("The value is : {:,}".format(1000000))

Salida:

The value is  : 1,000,000

Se agrega la coma (,) como separador de miles, como se muestra en el resultado.

: Esto agregará un espacio antes de cualquier número positivo. Este ejemplo muestra cómo agregar espacio o relleno antes del número dado. El número 5 indica el recuento de espacios que desea antes del número.

print("The value is: {:5}".format(40))

Salida:

The value is:    40
:- Esto agregará un signo menos antes de los números negativos. El ejemplo muestra cómo obtener el resultado con un signo menos (-) antes del número usando {:-}.

print("The value is: {:-}".format(-40))

Salida:

The value is: -40
:+ Puede utilizar el signo más para indicar que el número es positivo. El ejemplo muestra cómo obtener el resultado con un signo más (+) antes del número usando {:+}.

print("The value is: {:+}".format(40))

Salida:

The value is: +40
:= El igual a se utiliza para colocar el signo +/- en el lado izquierdo. El ejemplo muestra cómo obtener la salida con un signo más (+/-) antes del signo igual usando {:=}.

print("The value is {:=}".format(-40))

Salida:

The value is -40
:^ Esto centrará el resultado final. El ejemplo muestra cómo usar {:^} para centrar el texto. El número 10 se usa para agregar 10 espacios para mostrar la alineación central cuando se reemplaza el valor.

print("The value {:^10} is positive value".format(40))

Salida:

The value     40     is a positive value

Aquí, puede usar 10 que agregará 10 espacios en el texto final, y el valor a reemplazar estará alineado al centro entre los 10 espacios. Los espacios de 10 se agregan solo para mostrar la alineación central del valor reemplazado.

:> Esto alineará a la derecha el resultado final. El espacio de 10 se agrega usando (:>10) y el valor reemplazado se alinea a la derecha.

print("The value {:>10} is positive value".format(40))

Salida:

The value         40 is positive value
:< Esto alineará a la izquierda el resultado final. El espacio de 10 se agrega usando (:<10) y el valor reemplazado se alinea a la izquierda.

print("The value {:<10} is positive value".format(40))

Salida:

The value 40         is positive value

Usando clase con formato()

En este ejemplo, estamos creando una clase y usamos el objeto de la clase dentro del método .format Python. Los marcadores de posición se referirán a propiedades de clase o miembros que utilicen el objeto de clase.

Ejemplo:

La clase se llama dentro del formato (c=MyClass()). El objeto c tendrá la referencia a las propiedades y métodos dentro de la clase MyClass().

class MyClass:
    msg1="Guru"
    msg2="Tutorials"   

print("Welcome to {c.msg1}99 {c.msg2}!".format(c=MyClass()))

Salida:

Welcome to Guru99 Tutorials!

Usando diccionario con formato()

También es posible utilizar el diccionario dentro de format() como se muestra en el siguiente ejemplo:

my_dict = {'msg1': "Welcome", 'msg2': 'Guru99'}
print("{m[msg1]} to {m[msg2]} Tutorials!".format(m=my_dict))

Salida:

Welcome to Guru99 Tutorials!

Sustituciones de variables de relleno

Usando el método string.format(), puede agregar relleno y espacio usando marcadores de posición dentro de su cadena.

Ejemplo:

En el siguiente ejemplo, se agregará espacio dentro del marcador de posición usando el formato(). Para agregar espacio, debe especificar la cantidad de espacios dentro del rizado brackets después de los dos puntos (:). Entonces el marcador de posición se verá así: {:5}.

print("I have {:5} dogs and {:5} cat".format(2,1))

Salida:

I have     2 dogs and     1 cat

También puede proporcionar el índice dentro del marcador de posición, por ejemplo: {0:5} donde 0 se referirá al primer valor dentro del formato.

print("I have {0:5} dogs and {1:5} cat".format(2,1))

Salida:

I have     2 dogs and     1 cat

Resumen

  • La clase de cadena de Python nos brinda un importante comando integrado llamado format() que nos ayuda a reemplazar, sustituir o convertir la cadena con marcadores de posición con valores válidos en la cadena final.
  • Los marcadores de posición dentro del módulo de cadena Python están definidos en rizado brackets, por ejemplo, “Bienvenido a Guru99 {}”.format('valor aquí').
  • El marcador de posición puede estar vacío {}, o puede tener una variable, por ejemplo, {nombre}, o puede tener un índice numérico, por ejemplo, {0}, {1}, etc.
  • Puede utilizar el formato de cadena en Python dentro de los marcadores de posición que pueden ayudar a agregar relleno, alinear al centro y también ayudar con el formato de números.