Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

381
Vistas
¿Cómo formatear un número con coma cada cuatro dígitos en Python?

Tengo un número 12345 y quiero el resultado '1,2345' . Intenté el siguiente código, pero fallé:

 >>> n = 12345 >>> f"{n:,}" '12,345'
over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

Regex funcionará para usted:

 import re def format(n): return re.sub(r"(\d)(?=(\d{4})+(?!\d))", r"\1,", str(n))
 >>> format(12345) '1,2345' >>> format(12345678) '1234,5678' >>> format(123456789) '1,2345,6789'

Explicación:

Partido:

  • (\d) Coincide con un dígito...
  • (?=(\d{4})+(?!\d)) ...que va seguido de uno o más grupos de exactamente 4 dígitos.

Reemplazar:

  • \1, reemplaza el dígito coincidente con él mismo y un ,
over 4 years ago · Santiago Trujillo Denunciar

0

Puede dividir su número en fragmentos de 10000 usando el módulo y la división de enteros, luego str.join usando los delimitadores ','

 def commas(n): s = [] while n > 0: n, chunk = divmod(s, n) s.append(str(chunk)) return ','.join(reversed(s)) >>> commas(123456789) '1,2345,6789' >>> commas(123) '123'
over 4 years ago · Santiago Trujillo Denunciar

0

Suena como una cosa local (*) . Esto imprime 12,3456,7890 (¡ Pruébelo en línea! ):

 import locale n = 1234567890 locale._override_localeconv["thousands_sep"] = "," locale._override_localeconv["grouping"] = [4, 0] print(locale.format_string('%d', n, grouping=True))

Supongo que es una forma de hackear basada en esta respuesta . La otra respuesta allí habla sobre el uso de babel , tal vez esa sea una forma limpia de lograrlo.

(*) Una búsqueda rápida en Google encontró esto hablando de grupos chinos de cuatro dígitos, y el nombre de OP parece algo chino, así que...

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda