擅长:python、mysql、java
<p>如果我们看一下<a href="http://docs.python.org/reference/expressions.html#summary" rel="nofollow">rules for Operator precedence in Python</a>,我们可以看到:</p>
<pre><code>3 + 2 + 1 - 5 + 4 % 2 - 1 / 4 + 6
</code></pre>
<p>被视为:</p>
^{pr2}$
<p>(对于算术运算符,这与数学中的<a href="http://en.wikipedia.org/wiki/Order_of_operations" rel="nofollow">standard order of operations</a>的顺序相同。)</p>
<p>现在<code>4 % 2</code>是{<cd2>},因为4除以2的余数是0。<code>1 / 4</code>也是{<cd2>},因为Python将返回一个与操作数类型相同的值,当“floored”为0时返回0.25。在</p>
<p>所以我认为你的错误是把<code>/</code>应用到左边的整个表达式。事实上,由于<code>/</code>比<code>-</code>具有更高的优先级,计算的除法是<code>1 / 4</code>。在</p>