https://www.cnblogs.com/fwindpeak/p/4891212.html
在python中,默认情况下,如果表达式中全是整型,结果也会仅仅是整型。有时候没注意会出现意想不到的结果,比如:
1
2
3
4
5
|
>>> a
=
7
>>> b
=
3
>>> c
=
a
/
b
>>>
print
c
2
|
有时候一不小心会造成一定错误,所以需要得到浮点精度的结果时,表达式中必须要有浮点类型时才行。
如果是常数,可以通过加.0来解决
1
2
|
>>>
print
7.0
/
3
2.33333333333
|
如果全是变量,可以使用float函数转换,或者*1.0,比如
1
2
3
4
5
6
|
>>> a
=
7
>>> b
=
3
>>>
print
float
(a)
/
b
2.33333333333
>>>
print
a
*
1.0
/
b
2.33333333333
|
但是记得在第一位的时候就开始转换,否则依然会出现问题,比如
1
2
3
4
5
6
7
|
>>> a
=
7
>>> b
=
3
>>> c
=
2
>>>
print
a
/
b
*
float
(c)
4.0
>>>
print
float
(a)
/
b
*
c
4.66666666667
|