tamaño str pasar numeros numero lista letras letra entero convertir como cadena python string numbers number-formatting

str - Cómo formatear un número flotante a ancho fijo en Python



str a numero python (5)

Consulte la sintaxis de la cadena de formato Python 3.x:

IDLE 3.5.1 numbers = [''23.23'', ''.1233'', ''1'', ''4.223'', ''9887.2''] for x in numbers: print(''{0: >#016.4f}''. format(float(x))) 23.2300 0.1233 1.0000 4.2230 9887.2000

¿Cómo formateo un número flotante a un ancho fijo con los siguientes requisitos:

  1. Cero inicial si n <1
  2. Agregue el (los) decimal (es) final (es) para llenar el ancho fijo
  3. Truncar dígitos decimales más allá del ancho fijo
  4. Alinear todos los puntos decimales

Por ejemplo:

% formatter something like ''{:06}'' numbers = [23.23, 0.123334987, 1, 4.223, 9887.2] for number in numbers: print formatter.format(number)

La salida sería como

23.2300 0.1233 1.0000 4.2230 9887.2000


En Python 3.

GPA = 2.5 print(" %6.1f " % GPA)

6.1f significa que después de los puntos, 1 dígito muestra que si imprime 2 dígitos después de los puntos, solo debe %6.2f , de manera que %6.3f 3 dígitos se imprimen después del punto.


En python3 los siguientes trabajos:

>>> v=10.4 >>> print(''% 6.2f'' % v) 10.40 >>> print(''% 12.1f'' % v) 10.4 >>> print(''%012.1f'' % v) 0000000010.4


Ha sido un poco tuyo desde que se respondió, pero a partir de Python 3.6 ( PEP498 ) puedes usar las nuevas f-strings :

numbers = [23.23, 0.123334987, 1, 4.223, 9887.2] for number in numbers: print(f''{number:9.4f}'')

Huellas dactilares:

23.2300 0.1233 1.0000 4.2230 9887.2000


for x in numbers: print "{:10.4f}".format(x)

huellas dactilares

23.2300 0.1233 1.0000 4.2230 9887.2000