python - 为什么 python int() 会这样工作?

标签 python int

<分区>

只是随机尝试了这个:

>>> int(-1/2)
-1
>>> int(-0.5)
0

为什么结果不同??

最佳答案

试试这个:

>>> -1/2
-1
>>> -0.5
-0.5

不同之处在于整数除法(前者)在某些 Python 版本中得到整数,而不是像第二个数字那样的 float 。您在两个不同的数字上使用 int,因此您会得到不同的结果。如果您先指定 float ,您会发现差异消失了。

>>> -1.0/2.0
-0.5
>>> int(-1.0/2.0)
0
>>> int(-0.5)
0

关于python - 为什么 python int() 会这样工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24965349/

相关文章:

python - 如何创建一个可以在python中用作数组的字符串?

c# - 将字符串从数组转换为 int

java - Dice Class,Cho-Han Bakuchi 的游戏。Java(二元运算符的错误操作数类型 '+')

python - Pickle 目录中的多个文件

python - 如何在 Pandas 数据框中有效地查找交替 boolean 值的索引

python - 每天使用 twisted 重置 redis 键

c - 在 C 编程期间如何存储数据?

python - Python 中的 STRINGS 迭代(3)

c - 用于保存数据结构中元素计数的数据类型

c++ - 用 int 值初始化 vector <char>