Python формат строки x или меньше цифр - PullRequest
0 голосов
/ 19 февраля 2020

Есть ли в python 3.x простой однострочный текст для печати числа с x или меньшим количеством десятичных знаков?

Я хочу, чтобы

numbers = [7, 7.7, 7.77, 7.777]

for number in numbers:
    print("{:.less than 3}".format(number))

вернул

7
7.7
7.77
7.78

Ответы [ 2 ]

1 голос
/ 19 февраля 2020

Вы можете round числа с желаемой точностью:

numbers = [7, 7.7, 7.77, 7.777]

for number in numbers:
    print(round(number, 2))

# 7
# 7.7
# 7.77
# 7.78

По мотивам ответа @ JussiNurminen, вы также можете сделать:

for number in numbers:
    print(f'{number:.3g}')
0 голосов
/ 19 февраля 2020
for number in numbers:
    print('%.3g' % number)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...