Foros del Web » Programando para Internet » Python »

Definir el tamaño de las tabulaciones

Estas en el tema de Definir el tamaño de las tabulaciones en el foro de Python en Foros del Web. ¿Como se cambia el tamaño de las tabulaciones que genera el programa? No me refiero a las tabulaciones del código fuente en el editor de ...
  #1 (permalink)  
Antiguo 15/12/2014, 05:12
Avatar de jm00092  
Fecha de Ingreso: mayo-2005
Ubicación: Ronda
Mensajes: 106
Antigüedad: 15 años, 5 meses
Puntos: 0
Definir el tamaño de las tabulaciones

¿Como se cambia el tamaño de las tabulaciones que genera el programa?

No me refiero a las tabulaciones del código fuente en el editor de texto, sino a las que escribe el programa con el caracter especial "\t"

Código:
print ("Nombre\tPeso\tPrcio\tTotal")

Patatas     5Kg        0.50€      2.50€
Tomates     2Kg        0.80€      1.60€
  #2 (permalink)  
Antiguo 15/12/2014, 06:01
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Definir el tamaño de las tabulaciones

El tabulador no tiene "tamaño" por sí mismo. Y por tanto no hay manera, desde el programa, de decirle qué tantos espacios debe representar.

En el bloc de notas, el tabulador representa 8 espacios, mientras que en cualquier editor de texto decente esto es configurable.

En cualquier caso, si necesitás más control sobre los espacios que se imprimen, deberías leer sobre formato de cadenas, con lo cual podés hacer algo como
Código Python:
Ver original
  1. formato_tabla = "%10s%5s%8s%8s"
  2. print formato_tabla % ("Nombre", "Peso", "Precio", "Total")
  3. print formato_tabla % ("Patatas", "5Kg", "0.50€", "2.50€")


Saludos.
  #3 (permalink)  
Antiguo 15/12/2014, 17:15
 
Fecha de Ingreso: diciembre-2014
Ubicación: Valparaiso
Mensajes: 14
Antigüedad: 5 años, 10 meses
Puntos: 0
Respuesta: Definir el tamaño de las tabulaciones

Una tabulacion es una tabulacion como un espacio es un espacio, esto no se puede configurar en algunos editores de texto es posible modificar la cantidad de espacios que contiene la tabulacion como dice AlvaroG pero una tabulacion es una tabulacion no es un numero x de espacios, si en tu teclado usas tabulacion y luego borras 1 carácter este borrara la tabulacion completa, por que la tabulacion en si misma es solo 1 carácter.
  #4 (permalink)  
Antiguo 16/12/2014, 20:10
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 15 años, 7 meses
Puntos: 1360
Respuesta: Definir el tamaño de las tabulaciones

Como ya te dijeron arriba. Un tab '\t' es un caracter especial, que cada quien interpreta como se le de la gana. Mi recomendación igual que la de AlvaroG es usar espacios.
  #5 (permalink)  
Antiguo 18/12/2014, 04:20
Avatar de jm00092  
Fecha de Ingreso: mayo-2005
Ubicación: Ronda
Mensajes: 106
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: Definir el tamaño de las tabulaciones

Gracias

Tendré en cuenta lo del número de espacios

Habrá que calcular cuantos poner en cada caso para que las columnas del listado salgan en su sitio independientemente de lo larga que sea cada palabra
  #6 (permalink)  
Antiguo 18/12/2014, 06:36
 
Fecha de Ingreso: diciembre-2014
Ubicación: Valparaiso
Mensajes: 14
Antigüedad: 5 años, 10 meses
Puntos: 0
Respuesta: Definir el tamaño de las tabulaciones

Cita:
Iniciado por jm00092 Ver Mensaje
Gracias

Tendré en cuenta lo del número de espacios

Habrá que calcular cuantos poner en cada caso para que las columnas del listado salgan en su sitio independientemente de lo larga que sea cada palabra
Puedes crear una función que se encargue de controlar esto, que retorne un string con espacios en blanco xD
  #7 (permalink)  
Antiguo 18/12/2014, 18:44
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 15 años, 7 meses
Puntos: 1360
Respuesta: Definir el tamaño de las tabulaciones

Cita:
Iniciado por 7sixerCF Ver Mensaje
Puedes crear una función que se encargue de controlar esto, que retorne un string con espacios en blanco xD
Justo como dijo arriba AlvaroG, no ocupas eso.

Código Python:
Ver original
  1. formato_tabla = "%-10s %5s %8s %8s"
  2. print formato_tabla % ("Nombre", "Peso", "Precio", "Total")
  3. print formato_tabla % ("Patatas", "5Kg", "$0.50", "$2.50")
  4. print formato_tabla % ("Tomate", "10Kg", "$1.00", "$10.00")

Incluso puedes ajustar el formateo para que lo ponga a la derecha o la izquierda.

Etiquetas: cadenas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:32.