擅长:python、mysql、java
<p>是的,保证从左到右的评估顺序,但作业除外。这里有记录(<a href="https://docs.python.org/2/reference/expressions.html#evaluation-order" rel="noreferrer">py2</a>,<a href="https://docs.python.org/3/reference/expressions.html#evaluation-order" rel="noreferrer">py3</a>):</p>
<blockquote>
<p>Python evaluates expressions from left to right. Notice that while evaluating an assignment, the right-hand side is evaluated before the left-hand side.</p>
<p>In the following lines, expressions will be evaluated in the arithmetic order of their suffixes:</p>
</blockquote>
<pre><code>expr1, expr2, expr3, expr4
(expr1, expr2, expr3, expr4)
{expr1: expr2, expr3: expr4}
expr1 + expr2 * (expr3 - expr4)
expr1(expr2, expr3, *expr4, **expr5)
expr3, expr4 = expr1, expr2
</code></pre>
<p>如果语言没有对此做出选择,那么对一个参数的求值可能会改变另一个参数,并导致未指定的行为,因此Python的所有实现都必须遵循此规范</p>