Всегда печатайте случайные значения в диапазоне] -100;100 [как 2 цифры до и 2 цифры после точки, питон 3 - PullRequest
0 голосов
/ 31 мая 2018

У меня числа с плавающей запятой между] -100;100 [(100 не включены) поступают в качестве входных данных в мой код (содержащий более 400 строк, поэтому я максимально упрощаю свой вопрос).

Затем я печатаю одно из этих чисел в серединеСтрока, используя .format().

Я нашел, как сделать это отдельно, но только с целым числом для ведущих нулей, например:

number1 = 1 number2 =1.1 print('{:02d}'.format(number1)) print('{:.2f}'.format(number2))

, который будет возвращатья:

01 1.10

Теперь я хотел бы напечатать число, такое как number2 как 01.10.Есть ли способ сделать это просто?

Я надеюсь, что я был ясен и заранее благодарю вас за ваши ответы!

Ответы [ 2 ]

0 голосов
/ 31 мая 2018

Для Python3.6 + вы можете использовать интерполяция буквенных строк .Затем вы можете использовать стандартную спецификацию формата для обеспечения точности и левого заполнения.

num = -1.123
print(f'Formatted number: {num: 06.2f}')
# prints: 'Formatted number: -01.12'

num = 6.789
print(f'Formatted number: {num: 06.2f}')
# prints: 'Formatted number: 06.79'

Внутри скобки:

  • 'num' isпеременная, которая должна быть отформатирована.

  • ' 06' указывает, что вывод должен иметь ширину 6, оставляя заполненным 0, но положительное число дополняется пробелом слевавместо дополнительного 0

  • '.2f' означает, что вы хотите использовать число с плавающей запятой с 2 прецизионной цифрой.

0 голосов
/ 31 мая 2018

Чтобы дополнить число нулями, используйте

print('{: 06.2f}'.format(-99.3))

Объяснение: значение дополнения 6 - это длина целого числа, включая.и знак, пробел после : указывает, что для положительных чисел следует использовать дополнительный пробел (см. документы )

...