Ya sea una consulta de base de datos o resultados de operaciones matemáticas, el método de formato de cadena de Python ofrece una forma más dinámica y atractiva de presentar resultados a un usuario.
Echemos un vistazo a cómo str.format () La función funciona en Python. También descubrirá cómo puede utilizar este formato en sus propios programas.
¿Cómo funciona el formato de cadena de Python ()?
El pitón str.format () La función le permite insertar sus resultados en cualquier lugar de una cadena.
Funciona asignando espacio para sus resultados dentro de la cadena usando llaves. Luego escribe su salida en esa posición usando el formato() método.
Las cadenas fuera de la llave son lo que llamas textos literales.
Cómo utilizar el método Python String format ()
los str.format () La función acepta un valor y un especificador de formato de cadena opcional.
Así es como se ve la sintaxis general:
str.format (valor, format_spec)
Ahora echemos un vistazo a ejemplos más prácticos de cómo usar este método de cadena de Python.
1. Insertar un valor en una posición específica
Aquí hay un ejemplo básico de cómo insertar un valor en una cadena usando el str.format () método:
Costo = 45
formattedMethod = "Este bien cuesta {} solo dólares"
imprimir (formattedMethod.format (Cost))
Salida: Este bien cuesta solo 45 dólares
El código anterior es el mismo que:
formattedMethod = "Este bien cuesta {} solo dólares"
imprimir (formattedMethod.format (45))
Salida: Este bien cuesta solo 45 dólares
2. Insertar múltiples salidas en una cadena
También puede insertar varios resultados en una cadena. Así es cómo:
y = 7 * 8
f = 5 + 5
g = 0
a = "El valor de y es {}, mientras que f es {}. Nadie puede ver el formato {} ". (Y, f, g)
imprimir (a)
Salida: el valor de y es 56, mientras que f es 10. Nadie puede ver 0
3. Utilice llaves de escape para colocar salidas en llaves dedicadas
Si necesita colocar alguno de los resultados en un corchete, es fácil. Solo necesita introducir dos tirantes de escape adicionales.
Por ejemplo, di que quieres y en una llave de rizado dedicada:
a = "El valor de y es {{{}}}, mientras que f es {}. Nadie puede ver el formato {} ". (Y, f, g)
imprimir (a)
Salida: el valor de y es {56}, mientras que f es 10. Nadie puede ver 0
4. Valores de salida de una lista
Puede seleccionar valores específicos de una lista e insertarlos en una cadena:
myList = [10, 2, 4, 6]
print (("El primero es {} y el tercero es {}"). formato (myList [0], myList [2]))
Salida: el primero es 10 y el tercero es 4
Para evitar la repetición dentro del .formato() paréntesis, puede configurar el especificador de formato para que apunte a una sola variable en su lugar.
He aquí cómo hacerlo:
myList = [10, 2, 4, 6]
print (("El primero es {yourList [0]} y el tercero es {yourList [2]}"). format (yourList = myList))
Salida: el primero es 10 y el tercero es 4
La instancia anterior también se aplica a otros ejemplos que hemos tratado anteriormente. Entonces, puedes jugar con ellos usando este truco.
5. Insertar valores de un diccionario
Del mismo modo, como hizo en la sección anterior, puede utilizar el str.format () método para insertar un valor de diccionario en una cadena:
myDiction = {"Diez": 10, "Dos": 2, "Cuatro": 4, "Seis": 6}
print (("El primero es {} y el tercero es {}"). format (myDiction ["Ten"], myDiction ["Four"]))
Salida: el primero es 10 y el tercero es 4
Relacionado: Cómo convertir una lista en un diccionario en Python
Y si quieres usar el truco de la sección anterior:
myDiction = {"Diez": 10, "Dos": 2, "Cuatro": 4, "Seis": 6}
print (("El primero es {Diez} y el tercero es {Cuatro}"). formato (** myDiction))
Salida: el primero es 10 y el tercero es 4
También puede escribir el código anterior como:
print (("El primero es {d [Diez]} y el tercero es {d [Cuatro]}"). formato (d = myDiction))
Salida: el primero es 10 y el tercero es 4
6. Insertar la salida de una función en una cadena
Si desea mostrar la salida de una función en una cadena:
def difNums (a, b):
si a> b:
volver a - b
demás:
return return "No puedes restar {} de {} usando esta función" .format (a, b)
print (("Hola: {}"). formato (difNums (2, 6)))
Salida: Hola: no puedes restar 2 de 6 usando esta función
Uso de especificadores de formato de cadena de Python
El especificador de formato le permite elegir cómo se transmite su formato. Como se mencionó anteriormente, es un parámetro opcional que viene con str.format ().
Con esta opción, puede alinear su salida, reducir cadenas largas, agrupar salidas o redondear un número entero a un número específico de cifras significativas, e incluso más.
A menudo, escribirás los especificadores de formato dentro de las llaves. Pero también puede indicarlos explícitamente dentro del .formato() paréntesis.
Sigamos adelante y veamos algunos de sus casos de uso.
7. Alinear salida de cadena
Puedes usar el mayor (>) signo para alinear una salida de cadena a la derecha:
print ("Hola {:> 15}". formato (12734589))
Salida: Hola 12734589
También puede alinear su texto con el centro si lo desea:
print ("Hola {: ^ 15}". formato (12734589))
Salida: Hola 12734589
Formateemos más la salida anterior. Por ejemplo, puede incluir guiones bajos para ver el relleno a ambos lados de la salida de su cadena:
print ("Hola {: _ ^ 15}". formato (12734589))
Salida: Hola ___12734589____
Pero como se mencionó anteriormente, puede establecer el especificador de formato explícitamente como un parámetro dentro de str.format ().
Entonces, el código anterior se ve así en ese caso:
print ("Hola {: {g}}". formato (12734589, g = "_ ^ 15"))
Salida: Hola ___12734589____
Siéntase libre de reescribir los otros ejemplos usando la opción anterior.
8. Dar formato a las salidas a un número específico de cifras significativas
Es posible que también desee devolver un número particular de cifras significativas para un cálculo utilizando el .formato() método.
El código de ejemplo a continuación, por ejemplo, redondea el resultado de la operación matemática a un número decimal significativo:
calcprofitPerc = ((45 - 20) / 45) * 100
formattedOutput = "Nuestro beneficio sobre esto es {beneficio: .1f}%"
imprimir (formattedOutput.format (beneficio = calcprofitPerc))
Salida: Nuestro beneficio sobre esto es del 55,6%.
9. Truncar cadenas largas
Aunque truncar un texto puede parecer poco práctico, no puede saber dónde podría necesitarlo.
A continuación, le mostramos cómo cortar parte de la salida de su cadena usando el str.format () función:
print (("Truncar esto a los primeros 3 alfabetos: {: .3}"). format ("idowuomisola"))
Salida: Truncar esto a los primeros 3 alfabetos: ido
10. Grupo separado de números usando un criterio
Puede separar un grupo de números con un guión bajo o una coma:
print ("Separado por guión bajo: {: {g}}". formato (12734589, g = "_"))
print ("Separado por coma: {: {g}}". formato (12734589, g = ","))
Producción:
Separados por guión bajo: 12_734_589
Separado por coma: 12,734,589
Relacionado:Cómo dividir una cadena en Python
Además, puede especificar el grupo de números que desea tratar usando su clave:
print ("Primeros números por guión bajo: {0: {g}}". formato (12734589, 123674, 662772, g = "_"))
print ("Terceros números por coma: {2: {g}}". formato (12734589, 123674, 662772, g = ","))
Producción:
Primeros números por guión bajo: 12_734_589
Terceros números por coma: 662,772
Presentar resultados bien con el método Python String format ()
Una de las formas en que puede hacer que su programa se destaque es cómo presenta los resultados y las consultas. Sin lugar a dudas, el método de formato de cadena de Python ofrece una forma más limpia de generar resultados. A diferencia del método de módulo anterior de las versiones anteriores de Python, el nuevo formato de cadena introducido en Python 3 es más legible y amigable para los humanos.
Usar y manipular cadenas en Python puede parecer difícil, pero es engañosamente sencillo.
Leer siguiente
- Programación
- Programación
- Pitón
- Lenguajes de programación
Idowu es un apasionado de la tecnología inteligente y la productividad. En su tiempo libre, juega con la codificación y cambia al tablero de ajedrez cuando está aburrido, pero también le encanta romper con la rutina de vez en cuando. Su pasión por mostrarle a la gente el camino en torno a la tecnología moderna lo motiva a escribir más.
Suscríbete a nuestro boletín
¡Únase a nuestro boletín de noticias para obtener consejos técnicos, reseñas, libros electrónicos gratuitos y ofertas exclusivas!
Haga clic aquí para suscribirse