首页 > 解决方案 > Python - 为什么 a=1/3 是 int 而 a=0.3 是 float

问题描述

因为那个 python 决定 a=1/3 是 int 它使 a 的值为 0,这是非常不期望的。我相信阅读完整的文档会解释它,但是谷歌的很多搜索都没有找到这个问题的简单答案。

标签: pythonpython-2.7

解决方案


a=1/3

是一个表达式,被评估为 int / int ,它产生一个 int 结果。

a=0.3

是未评估的值并且是浮点数。

但是,如果您仍想使用表达式形式,则需要将其中任何一个数字设为浮点数,这意味着:

a=1.0/3

或者

a=1/3.0

后两者将产生浮点结果。


推荐阅读