отформатировать десятичные числа до процентов и обрезать остальные - PullRequest
0 голосов
/ 20 октября 2018

Может кто-нибудь помочь мне отформатировать что-то вроде этого:

0.774834437086

Кому:

77

У меня ужасное время при поиске решения путем поиска.Я использую Python 2.11.Умножение на 100 приближает меня (мне все еще нужно обрезать), но я также хотел бы округлить.Например, 0.776834437086 будет округляться до 78.

Ответы [ 3 ]

0 голосов
/ 20 октября 2018
num_1 = 0.774834437086
num_2 = 0.776834437086

percent_1 = int(round(num_1 * 100))
percent_2 = int(round(num_2 * 100))

percent_1: 77
percent_2: 78
0 голосов
/ 20 октября 2018

Это будет сделано:

from decimal import Decimal
from math import ceil

d = Decimal("0.774834437086")
print(d)  # -> 0.774834437086
d = round(d, 2)
print(d)  # -> 0.77

d2 = Decimal("0.776834437086")
print(d2)  # -> 0.776834437086
d2 = ceil(d2*100)/100  # Round up to two (10**2==100) decimal places.
print(d2)  # -> 0.78

Обратите внимание, что 0.774834437086 также округлит до до .78.

0 голосов
/ 20 октября 2018
round(x*100)

или

round(x,2)*100
...