我对 python 有点陌生,似乎无法弄清楚我做错了什么。
a = 9
b = 13
print ((a-b)/a)
-1
但在我的计算器上,正确答案是 -0.444444444(意思是“a”比“b”低大约 45%)。 我怎样才能让小数点出现几位?
我试过了
print Decimal((a-b)/a)
print float((a-b)/a)
两者的结果相同。如果我使 a = 9.0 它会起作用,但我想看看是否可以在不更改变量的情况下做任何事情。
我确信这非常简单,但我不确定要尝试什么。有什么建议吗?
谢谢
请您参考如下方法:
尝试将一个(或两个)参数转换为 float ,而不是结果:
print ((a-b)/float(a))
或者只是升级到已修复此行为的 Python 3:
>>> a = 9
>>> b = 13
>>> print ((a-b)/a)
-0.4444444444444444
顺便说一句,如果您想要在Python 3.x 中进行整数除法,您可以使用// 而不是/。查看PEP如果您有兴趣,请了解此更改。
