Можно ли редактировать метод с плавающей точкой Python, чтобы округлять каждый вывод с плавающей запятой без указания? - PullRequest
0 голосов
/ 27 января 2019

ОБНОВЛЕНО, чтобы отразить лучший вопрос:

Не то, чтобы это была хорошая практика, просто любопытно, если кто-нибудь знает , как , если возможно переопределить Python Float function type , так что он округляет каждый вывод без необходимости выполнения каких-либо отдельных операций, , так что если вы находитесь в классе, все возвращаемые числа округляются.

Например:

class example():    
    def float():
       #modify to return value for any float to round to 2 places
    a = 5 * 7.567 #= 37.835
    print(a) # a's value as 37.84

ПРИМЕЧАНИЕ. Не думаю, что это возможно.Просто любопытно, если кто-нибудь знает наверняка, или имеет хак для получения такого рода функциональности.

1 Ответ

0 голосов
/ 27 января 2019

Лучше не связываться со встроенными типами. Вместо этого я могу порекомендовать вам прочитать о десятичных дробях, которые дадут вам полный контроль над точностью.

Python2 (https://docs.python.org/2/library/decimal.html)
Python3.7 (https://docs.python.org/3.7/library/decimal.html)

Десятичная дробь - это стандартная библиотека, поэтому она всегда к вашим услугам!

...