擅长:python、mysql、java
<p>就在这行代码下面,有一个for循环:</p>
<pre><code>for i in range(n):
string += '-'
</code></pre>
<p><code>x += y</code>运算符是<code>x = x + y</code>的语法糖。要使用此运算符,<code>x</code>必须首先定义一个值。你知道吗</p>
<p>对于循环的第一次迭代,<code>string</code>基本上是这样分配的:</p>
<pre><code>string = string + '-'
</code></pre>
<p>为了避免抛出<code>NameError</code>,<code>string</code>首先需要声明并赋值,这就是<code>string = ""</code>所做的。循环的第一次迭代中的表达式基本上变成:</p>
<pre><code>string = '' + '-'
</code></pre>