【发布时间】:2020-12-03 11:57:18
【问题描述】:
我在 Python 3 中使用了一些基本操作并遇到了这个
代码 1:
a = 6
b = 3
a = a / 2 * b
print(a)
输出是9.0
在我见过的其中一个培训中
a = a / 2
可以写成
a /= 2
所以我重写了我上面的代码如下
代码 2:
a = 6
b = 3
a /= 2 * b
print(a)
但现在输出是1.0。
我期待 9.0 作为输出。有人能帮我理解为什么代码会这样吗?
【问题讨论】:
-
这是关于操作的优先级...第一个是
(a / 2) * b;第二个a / (2 * b)。 -
这里没有括号..当我没有括号时python会假设有括号吗?
-
python 做出了(记录在案的 [从左到右])的选择。它必须。你似乎也在这里想象括号......只是不是围绕相同的操作。
-
添加了一个答案;我的回复太长,无法发表评论。
标签: python