Python:使用一个列表搜索另一个列表并拉出相应的行

时间:2015-06-07 07:21:47

标签: python list csv

我被困住了。我有一个字符串列表,我想搜索一个更大的列表,其中包含与这些字符串相关联的其他列,并将我的第一个列表中的字符串放入一个新文件及其相关值来自第二个列表(即。整行,其中有一个字符串匹配)。

这是我到目前为止所拥有的

from sys import argv

script, filename, filename2, outputfile = argv

import csv #program to help manipulate csv files
with open(filename,'rU') as fin1, open(filename2, 'rU') as fin2, open (outputfile,'w') as fout: #simplifies opening and closing a file into one line

for row in fin1:
    gene = row[0]

writer = csv.writer(fout, delimiter=',')       #dialect must be specified, csv file so it is a ,
    for gene in csv.reader(fin1, delimiter=','):
        for row in csv.reader(fin2, delimiter=','):
            if gene == row[4]: 
                writer.writerow(row)
                break

谢谢

1 个答案:

答案 0 :(得分:0)

adb

每次都需要打开和关闭fin2,因为csv阅读器只能向前读取并且无法返回。 希望这会有所帮助。