擅长:python、mysql、java
<p>当然,它在第一个匹配之后停止,因为您正在从一个函数执行<code>return</code>。相反,您应该在循环中填充某个数组并在最后<code>return</code>,或者在每次迭代中使用<code>yield</code>和{<cd4>}创建一个生成器,以防找不到任何内容。第一种方法更简单,更接近您的解决方案,这里是:</p>
<pre><code>import os, csv
def chkifexists():
files = ['A.csv', 'B.csv', 'C.csv']
found = []
for fname in files:
if os.path.isfile(fname):
if fname == "A.csv":
hashcolumn = 7
filepathNum = 5
elif fname == "B.csv":
hashcolumn = 15
filepathNum = 5
elif fname == "C.csv":
hashcolumn = 1
filepathNum = 0
found.append({'fname': fname,
'hashcolumn': hashcolumn,
'filepathNum': filepathNum})
return found
found = chkifexists()
if not found:
print 'No files to scan'
else
for f in found:
print f['fname'], f['hashcolumn'], f['filepathNum']
</code></pre>