繁体   English   中英

将浮点数舍去为与乘数相同的小数

[英]Round a float to same decimals as the multiplier

我想要某人的帮助以尽可能多的pythonic方式编写此代码

x = 2.651
y = 1.05
a = x * y
print(a)
2.78355

在此示例中,我希望a具有与x相同的小数位数,因此答案应为2.784。 用正确的小数位数获取此答案的有效方法是什么?

尝试这样的事情。 我的把戏使用字符串属性。

x = 2.651
y = 1.05

x_dec = len(str(x).split('.')[1])

a = ('{0:.%df}' % x_dec).format(x * y)
x = 2.651
decloc = (str(x).find('.'))+1
decimals = (len(str(x)[decloc:]))
y = 1.05
a = x * y
print(round(a, decimals))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM