Curso de Python
Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors

Salida  de datos por pantalla

Ya hemos visto que la función print() es la forma general de mostrar información por pantalla. Ahora vamos a profundizar un poco más en ella:

In

v = "otro texto"

n = 10

print("Un texto", v, "y un número", n)

Out

Un texto otro texto y un número 10

Esta función acepta caracteres especiales como las tabulaciones (\t) o los saltos de línea (\n)

In

print("Un texto\tuna tabulación")

print("Un texto\nuna línea nueva")

Out

Un texto      una tabulación

Un texto

una línea nueva

Para evitar los caracteres especiales, debemos indicar que una cadena es cruda (raw), anteponiendo una r a la cadena de caracteres a mostrar, como se ve a continuación.

In

print("C:\nombre\directorio")

print(r"C:\nombre\directorio")

 

Out

C:

ombre\directorio

C:\nombre\directorio

Podemos utilizar """ (triples comillas) para cadenas multilínea:

In

print("""Una línea

otra línea

una línea más""")

Out

Una línea

otra línea

una línea más

Utilizando el parámetro sep, podemos separa cada uno de los caracteres de la cadena con el carácter indicado y con el  parámetro end podemos finalizar la cadena con el carácter que le indiquemos:

In

print(1,2,3,4)

print(1,2,3,4, sep = '*')

print(1,2,3,4, sep = '#', end = '&')

Out

1 2 3 4

1*2*3*4

1#2#3#4&

Existe una funcionalidad en las cadenas de texto que nos permite formatear información cómodamente utilizando identificadores referenciados, para ello usamos el método format()

In

texto = "otro texto"

num = 10

c = "Un texto '{}' y un número'{}'".format(texto,num)

print(c)

Out

Un texto 'otro texto' y un número '10'

Mediante el método format() también podemos referenciar a partir de la posición de los valores utilizando índices. O podemos utilizar un identificador con una clave y luego pasarlas al método format():

In

print("Un número '{1}' y un texto '{0}'".format(texto, num))

print("Un texto '{t}' y un número '{n}'".format ( t=texto, n=num))

Out

Un número '10' y un texto 'otro texto'

Un texto 'otro texto' y un número '10'

También podemos realizar un formateo avanzado, alineando a diferentes posiciones en 15 caracteres de la siguiente manera:

In

print("{:>15}".format("palabra")) #Alineado a la derecha

print("{:<15}".format("palabra")) #Alineado a la izquierda

print("{:^15}".format("palabra")) #Alineado al centro

Out

               palabra

palabra               

       palabra       

Para realizar un truncamiento de 5 caracteres procederemos de la siguiente manera:

In

print("{:.5}".format("palabra")

Out

palab

Combinando varios de estos formateos, hacemos un alineamiento a la derecha en 15 caracteres con truncamiento de 3:

In

print("{:>15.3}".format("palabra")

Out

               pal

Y, por último, para formatear números enteros o decimales, rellenados con ceros, realizaremos lo siguiente:

In

print("{:04d}".format(10))

print("{:04d}".format(100))

print("{:04d}".format(1000))

print("{:07.3f}".format(3.1415926))

print("{:07.3f}".format(153.21))

Out

0010

0100

1000

003.142

153.210