我希望有人能以尽可能多的pythonic方式写这篇文章
x = 2.651
y = 1.05
a = x * y
print(a)
2.78355
在此示例中,我希望a
的小数位数与x
相同,因此答案应为2.784。用正确的小数位数来获得此答案的pythonic方法是什么?
答案 0 :(得分:2)
尝试类似这样的方法。我的把戏使用字符串属性。
x = 2.651
y = 1.05
x_dec = len(str(x).split('.')[1])
a = ('{0:.%df}' % x_dec).format(x * y)
答案 1 :(得分:2)
x = 2.651
decloc = (str(x).find('.'))+1
decimals = (len(str(x)[decloc:]))
y = 1.05
a = x * y
print(round(a, decimals))