擅长:python、mysql、java
<p>你需要创建一个列表来附加你的项目。您的函数只在每个循环中运行一次,因为您在第一次迭代时<code>return</code>。你知道吗</p>
<pre><code>def results():
items = list()
with open('test.csv','r')as document:
for line in document:
line=line.split(',')
for item in line:
item=item.replace('\n','')
item=int(item)*2
items.append(item)
return items
In [6]: results()
Out[6]: [2, 4, 6, 8]
</code></pre>
<p>或者您可以保持相同的逻辑并使用<code>yield</code>创建生成器:</p>
<pre><code>def results():
with open('test.csv','r')as document:
for line in document:
line=line.split(',')
for item in line:
item=item.replace('\n','')
item=int(item)*2
yield item
In [4]: [i for i in results()]
Out[4]: [2, 4, 6, 8]
</code></pre>
<p>注意,后一个示例在清理生成器之前保持文件打开。你知道吗</p>