Как отформатировать плавающее число в фиксированную ширину со следующими требованиями:
- Ведущий ноль, если n <1
- Добавьте конечный десятичный ноль (ноль), чтобы заполнить фиксированную ширину
- Усечение десятичных цифр после фиксированной ширины
- Совместите все десятичные точки
Например:
% formatter something like '{:06}'
numbers = [23.23, 0.123334987, 1, 4.223, 9887.2]
for number in numbers:
print formatter.format(number)
Выход будет как
23.2300
0.1233
1.0000
4.2230
9887.2000
python
string
numbers
number-formatting
hobbes3
источник
источник
10.4
означает ширину 10 символов и точность 4 десятичных знака.10
минимальная ширина поля, то есть минимальная длина напечатанной строки. Числа по умолчанию выровнены по правому краю и дополнены пробелами - более подробную информацию смотрите в документации .("%0.4f" % x).rjust(10)
"%10.4f" % x
. В Python 2.6 вы также можете использовать"{0:10.4f}".format(x)
.Прошло несколько лет с тех пор, как на них был дан ответ, но начиная с Python 3.6 ( PEP498 ) вы могли использовать новое
f-strings
:Печать:
источник
В python3 работает следующее:
источник
%
форматирование является старейшим методом форматирования. По нескольким причинам использованиеstr.format
илиf-strings
является предпочтительным%
. Ранее, когда это было толькоstr.format
, у людей были некоторые причины, ноf-strings
исправляли эту дыру. отформатировать мини-языковые документы , примеры str.format из документов и примеры из строковых литералов в документахСмотрите синтаксис строки формата Python 3.x :
источник
Вы также можете оставить блокнот с нулями. Например, если вы хотите
number
иметь длину 9 символов, слева добавьте нули:print('{:09.3f}'.format(number))
Таким образом, если
number = 4.656
вывод:00004.656
Для вашего примера вывод будет выглядеть так:
печатает:
Один пример, где это может быть полезно, - это когда вы хотите правильно перечислить имена файлов в алфавитном порядке. Я заметил, что в некоторых системах Linux это число: 1,10,11, .. 2,20,21, ...
Таким образом, если вы хотите установить необходимый порядковый номер в именах файлов, вам нужно слева добавить соответствующее количество нулей.
источник
В Python 3.
6.1f
средство после точек 1 цифра показывает , если вы печатаете 2 цифры после точки следует только%6.2f
таким образом, что%6.3f
3 цифры печатаемой после точки.источник
Мне нужно что-то подобное для массивов. Это помогло мне
источник