擅长:python、mysql、java
<p>假设您的列表至少有一个元素,您可以创建一个迭代器并使用<code>next</code>来获取第一个元素,然后将其余元素相加:</p>
<pre><code>i = iter(lst)
s = next(i)
for x in i:
s += x
</code></pre>
<p>您也可以使用<a href="https://docs.python.org/3/library/functions.html#sum" rel="nofollow noreferrer">^{<cd2>}</a>函数来完成此操作,并使用第二个参数指定初始值:<code>s = sum(i, next(i))</code>。这显式地<em>不适用于字符串</em>,但您也可以以类似的方式使用<code>reduce</code>,这样<em>将</em>处理字符串:<code>s = reduce(operator.add, i, next(i))</code>。或者,您甚至可以将其与来自<a href="https://stackoverflow.com/a/30783541/1639625">@Kevin's answer</a>的<code>DummyItem</code>结合起来,作为<code>s = sum(lst, DummyItem())</code>。这样它也可以处理字符串,并且可以直接使用列表,而不需要创建迭代器。在</p>