擅长:python、mysql、java
<p>您正在使用<code>sum</code>作为变量名,但尚未初始化。但<code>sum</code>是内置函数的名称,因此不应将其用作变量名,因为它可能导致如下问题:)您的代码告诉Python将<code>values</code>中的整数添加到函数中,因此它会抱怨。但这是可行的:</p>
<pre><code>values = [1, 2, 3, 4]
total = 0
for i in values:
total = total + i
print total
</code></pre>
<p><strong>输出</strong></p>
<pre><code>10
</code></pre>
<p>FWIW,如果我们使用<code>sum</code>而不是<code>total</code>来存储当前的累计和,上面的代码就可以工作了,因为它在循环开始之前就被初始化了。但这不是一个好主意,因为这意味着如果以后需要,就不能访问正确的<code>sum()</code>函数。另外,阅读您的代码的人会感到有点困惑</p>
<hr/>
<p>或者您可以只使用<code>sum()</code>函数,因为它是用来将iterable的内容添加到一起的:</p>
<pre><code>print sum(values)
</code></pre>
<p><strong>输出</strong></p>
<pre><code>10
</code></pre>