热门标签:
Q:

BODMAS-python

我以为我理解BODMAS(英国的BIDMAS)。 我不确定为什么下面的表达式以不同的顺序计算:

a = 8*4//3

我期望'除法'首先发生,给出a = 8*1-而不是'乘法'首先发生,给出a = 32//3 = 10

b = 9//3*7

Exampleb根据BIDMAS规则计算为21。

似乎python从左到右执行一个表达式,并将'除法'和'乘法'视为等价物。 发生什么事了? 先谢谢你,法兹。

原网址
A:

BEDMASBIDMASBOMDASBODMASPEDMAS和其他操作顺序首字母缩略词中,除法和乘法具有相同的权重,并在其当前块内从左到右计算。

阅读thissection以获得澄清。

所有回答

共 2 条

author avatar

将OP上的评论变成一个独立的答案,因为这篇文章显示在搜索结果的顶部:

乘法和除法在Python中具有相同的优先级,以及根据BODMAS/BEDMAS/BIDMAS/BIMDAS/BOMDAS/PEDMAS规则,因此评估然后从左到右进行Python2docs

author avatar

如果你做一个乘法和除法,那么你在例如6*5/3=10中做哪个顺序并不重要,就像6/3*5=10一样。 区别在于添加哪里6+3*5 =21但(6+3)*5 = 45.

相似问题