Foros del Web » Programando para Internet » Python »

Como Usar el thousand_separator?

Estas en el tema de Como Usar el thousand_separator? en el foro de Python en Foros del Web. Hola, estoy intentando usar el thousand_separator para separar los valores numéricos y utilizar el punto de de mil "1.000" pero no entiendo como, o en ...
  #1 (permalink)  
Antiguo 28/02/2014, 16:05
 
Fecha de Ingreso: febrero-2014
Mensajes: 7
Antigüedad: 10 años, 9 meses
Puntos: 0
Como Usar el thousand_separator?

Hola, estoy intentando usar el thousand_separator para separar los valores numéricos y utilizar el punto de de mil "1.000" pero no entiendo como, o en todo otra forma de poder hacerlo, agradecería cualquier ayuda o sugerencia Gracias!. (framework django)
  #2 (permalink)  
Antiguo 28/02/2014, 17:29
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 8 meses
Puntos: 1360
Respuesta: Como Usar el thousand_separator?

Suponiendo que tus settings estan bien usa
intcomma https://docs.djangoproject.com/en/de...nize/#intcomma
  #3 (permalink)  
Antiguo 01/03/2014, 07:11
 
Fecha de Ingreso: febrero-2011
Mensajes: 54
Antigüedad: 13 años, 8 meses
Puntos: 18
Respuesta: Como Usar el thousand_separator?

Hice un decorador, no sé si sirve para django:
Código Python:
Ver original
  1. def format_thousand_sep(n):
  2.  
  3.     def form(*args, **kwargs):
  4.         return '{:,}'.format(n(*args, **kwargs)).replace(',','.')
  5.        
  6.     return form

Ejemplo:

Código Python:
Ver original
  1. @format_thousand_sep
  2. def suma(a,c):
  3.     return a+c
  4.    
  5. print suma(666676,28786676)

Salida:

Código:
29.453.352
Saludos.
  #4 (permalink)  
Antiguo 24/04/2014, 13:06
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años, 7 meses
Puntos: 292
Respuesta: Como Usar el thousand_separator?

@sukoy : gran aporte.... me podras explicar bien esta linea ?

Código Python:
Ver original
  1. return '{:,}'.format(n(*args, **kwargs)).replace(',','.')

Especificamente no entieno lo de '{:,}'.format() ni porque los parametros a format se pasan asi en vez de estar todos separaros por comas:


Cita:
format(n, *args, **kwargs)
__________________
Salu2!
  #5 (permalink)  
Antiguo 24/04/2014, 14:49
 
Fecha de Ingreso: febrero-2011
Mensajes: 54
Antigüedad: 13 años, 8 meses
Puntos: 18
Respuesta: Como Usar el thousand_separator?

.format() = formateo de cadenas a partir de 2.6 creo.

'{:,}' = el resultado formateado con separadores de millar en inglés

n(*args, **kwargs) es la funcion a decorar, en este caso suma() con lista opcional de argumentos y/o diccionario,(los nombres son por convención).

Al resultado le reemplazamos las comas del formato de millar en ingles por los puntos del español.

https://docs.python.org/2/library/string.html
http://www.saltycrane.com/blog/2008/01/how-to-use-args-and-kwargs-in-python/
http://stackoverflow.com/questions/739654/how-can-i-make-a-chain-of-function-decorators-in-python

Saludos.
Muy recomendable el articulo de stackoveflow.
  #6 (permalink)  
Antiguo 24/04/2014, 14:55
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años, 7 meses
Puntos: 292
Respuesta: Como Usar el thousand_separator?

Cita:
'{:,}' = el resultado formateado con separadores de millar en inglés

n(*args, **kwargs) es la funcion a decorar, en este caso suma() con lista opcional de argumentos y/o diccionario,(los nombres son por convención).
Gracias ! habia varias cosas que eran un avanzadas desde mi ignorancia
__________________
Salu2!

Etiquetas: django, usar
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 15:18.