擅长:python、mysql、java
<p>您的问题是,在只操作了<em>一个</em>元素之后,在for循环的第一次迭代中返回。您需要建立一个<em>列表</em>,然后返回<em>整个</em>列表。在</p>
<p>您可以手动执行此操作:</p>
<pre><code>def lower_list(*args):
strings = []
for string in args:
strings.append(string.lower())
return strings
</code></pre>
<p>但更简单、更优雅的解决方案是使用列表理解:</p>
^{pr2}$
<p>另一个选择,如果你喜欢它,是使用一个发电机</p>
<pre><code>def lower_list(*args):
for string in args:
yield string.lower()
</code></pre>
<p>它的用法如下:</p>
<pre><code>>>> str_gen = lower_list('Hello', 'WORld', 'Name', 'BUCKs')
>>> next(str_gen)
'hello'
>>> next(str_gen)
'world'
>>> next(str_gen)
'name'
>>> # etc...
</code></pre>
<p>或者如果您需要一次完整的字符串列表:</p>
<pre><code>>>> list(lower_list('Hello', 'WORld', 'Name', 'BUCKs'))
['hello', 'world', 'name', 'bucks']
</code></pre>