<p>嗯,你的问题有几点。
您需要传递几个文件,读取每个文件中的一些值,然后将这些值输出到csv文件中。
如果你把你的问题分解成几个连续的步骤,这会很有帮助。你知道吗</p>
<p>首先,你需要知道如何阅读给定文件中最好的和共同的朋友。您可以在函数中执行此操作:</p>
<pre><code>def get_best_mutual(filename):
# some code
return (best_friend, mutual_friend)
</code></pre>
<p>然后,您可以迭代所有文件,在收集值时写入值:</p>
<pre><code>for filename in list_of_filenames:
best_friend, mutual_friend = get_best_mutual(filename)
# write filename, best_friend, mutual_friend in output file
</code></pre>
<p>写进文件应该很容易,我不谈细节。
问题可能是实际从输入文件中获取值。你知道吗</p>
<p>读取文本文件时,通常是逐行读取。然后你可以看看你的台词来决定做什么:如果它定义了最好的朋友或者共同的朋友,保存这个定义,否则什么也不做。你知道吗</p>
<p>具体来说,它可能看起来像:</p>
<pre><code>def get_best_mutual(filename):
for line in open(filename): # read each line of the file
key, value = line.split(':', 1) # split the line along the first :
if key.startswith('Best'):
best_friend = value
if key.startswith('Mutual'):
mutual_friend = value
return (best_friend, mutual_friend)
</code></pre>
<p>显然,您必须对代码进行更多的保护,以防行中没有“:”,并且您可能还注意到该值以空格开头,以“\n”结尾:您可以使用价值.strip()来解决这个问题。与<code>key</code>相同,如果一行以空格开头,上面的代码将无法识别它。你知道吗</p>
<p>例如,您还需要决定如果一个文件没有最好的朋友该怎么办。你知道吗</p>