如何防止在Python中进行数学运算时将十进制转换为int?

如何防止在Python中进行数学运算时将十进制转换为int?,python,integer,decimal,Python,Integer,Decimal,在Python中进行数学运算(执行函数,如/或*)时,如何防止将十进制转换为整数 要将输入作为十进制数,我使用decimal模块中的decimal 当我这样做的时候 from decimal import Decimal foo = Decimal(input()) 输入3.8,输出3.8,正确。但是,当我添加一个数学函数时 print(foo//2) 对于我的代码,它输出1,而应该输出1.4 有没有办法防止这种情况发生,因为我正在制作的程序依赖于小数 不要使用/,只要使用//是楼层划分。这

在Python中进行数学运算(执行函数,如
/
*
)时,如何防止将
十进制
转换为
整数

要将输入作为十进制数,我使用
decimal
模块中的
decimal

当我这样做的时候

from decimal import Decimal

foo = Decimal(input())
输入
3.8
,输出
3.8
,正确。但是,当我添加一个数学函数时

print(foo//2)

对于我的代码,它输出
1
,而应该输出
1.4


有没有办法防止这种情况发生,因为我正在制作的程序依赖于小数

不要使用
/
,只要使用
/
<代码>/是楼层划分。这将除以并返回商的整数值。它转储小数点后的数字。

/
是整数除法,因此它将始终返回整数。您正在使用地板除法。。。使用单个正斜杠进行除法而不是楼层除法。使用
/
进行除法,@prashantrana谢谢。。。解决了的!但是,请考虑把它作为一个答案,这样我就可以对它进行投票和校对。