在Python中使用除法运算符时如何获得十进制值?

问题描述 投票:62回答:13

例如,标准除法符号'/'舍入为零:

>>> 4 / 100
0

但是,我希望它返回0.04。我要用什么?

python python-2.7 math syntax operators
13个回答
131
投票

有三个选项:

>>> 4 / float(100)
0.04
>>> 4 / 100.0
0.04

与C,C ++,Java等或]的行为相同>

>>> from __future__ import division
>>> 4 / 100
0.04

您还可以通过将参数-Qnew传递给Python解释器来激活此行为:

$ python -Qnew
>>> 4 / 100
0.04

第二个选项将是Python 3.0中的默认选项。如果要使用旧的整数除法,则必须使用//运算符。

Edit

:由于-Qnew,添加了有关ΤΖΩΤΖΙΟΥ的部分!

0
投票

您无法通过将一个整数除以另一个而获得十进制值,否则您将始终以这种方式获得一个整数(结果被截断为整数)。您需要至少一个值作为十进制数字。


0
投票

在代码中添加以下函数及其回调。


0
投票

仅在小数点后删除小数部分。您是否尝试过:4.0 / 100


-3
投票

像这样从将来的库导入分区:


24
投票

其他答案建议如何获取浮点值。尽管此wlil接近您想要的,但它不是精确的:


7
投票

使两个或两个术语成为浮点数,如下所示:


4
投票

[您可能还想看看Python的decimal包。这将提供不错的十进制结果。


3
投票

您需要告诉Python使用浮点值,而不是整数。您只需在输入中使用小数点即可完成此操作:


1
投票

尝试4.0 / 100


1
投票

简单路线4 / 100.0


1
投票

这里有以下两种可能的情况


1
投票

您也可以尝试在数字末尾添加“ .0”。

© www.soinside.com 2019 - 2024. All rights reserved.