python - 楼层划分和划分的运算符优先级

标签 python python-3.x operators

我很难理解为什么 python 会为这两个语句返回不同的结果:

-1//3/4-1//0.75

第一个返回 -0.25,第二个返回 -2

按照我的理解,/ 运算符在 // 之前执行,因此这两个语句应该具有相同的结果。

编辑: 我指的是我的大学提供的文件。我误解了那个。官方 python 文档证明我错了。 感谢所有快速回答。

最佳答案

根据 documentation/// 运算符具有相同的优先级所以在同一个表达式中使用时,它们是从左到右求值的。 -1//3/4 因此等同于 (-1//3)/4 而不是 -1//(3/4).

关于python - 楼层划分和划分的运算符优先级,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53072731/

相关文章:

python - python 读取以数字结尾的目录中的文件

python - 在TensorFlow中评估CIFAR-10时如何获得类别概率?

javascript - JavaScript 中是否有用于检查对象属性的 “not in” 运算符?

c - 逗号运算符 , 有什么作用?

operators - 三元和三元的区别?

python - cassandra 没有主机可用 :

Python 正在过滤掉货币标记

python - 如何以纯数据格式获取 Python Sphinx 文档?

python-3.x - Dockerfile未在端口上运行

windows - `ProcessPoolExecutor` 在 Ubuntu 上工作,但在 Windows 10 上运行带有 Python 3.5.3 的 Jupyter 5.0.0 笔记本时失败并显示 `BrokenProcessPool`