解析CSV文件(Python)

解析CSV文件(Python),python,csv,python-2.x,Python,Csv,Python 2.x,我有一个CSV文件,格式如下: "SHA-1","MD5","CRC32","FileName","FileSize","ProductCode","OpSystemCode" 基本上,我在Python2.x中要做的是读取文件,如果在filename列中存在列表中具有指定文件扩展名的任何文件,则MD5哈希列中的数据将解析为文本文档 我的伪代码如下所示: list = [.doc,.xls,.ppt] with open(new.csv) as new_f: with open(x.c

我有一个CSV文件,格式如下:

"SHA-1","MD5","CRC32","FileName","FileSize","ProductCode","OpSystemCode"
基本上,我在Python2.x中要做的是读取文件,如果在filename列中存在列表中具有指定文件扩展名的任何文件,则MD5哈希列中的数据将解析为文本文档

我的伪代码如下所示:

list = [.doc,.xls,.ppt]

with open(new.csv) as new_f:
    with open(x.csv) as old_f:
        x = f.readlines()
        if list in x:
            # *copy out the value from the MD5 value column to new.csv*
我只是不知道如何提取MD5散列


有什么建议吗?

为MD5哈希创建一个列表,为文件名创建一个列表,如果列表在文件名列表项中,则保存索引并将其用于MD5列表(因为您有一个表,所以索引必须相同)

解决方案标识:-

import csv

results = []
filetypes = ['jpg','bmp','jpeg','mov','mp4','avi','wmv','wav','tif','gif','png']
reader = csv.reader(open('c:\users\me\Desktop\x.csv'))
for extension in filetypes:
    for line in reader:  # iterate over the lines in the csv
        if extension in line[3]:
            print line[1] + "\t" + line[3]

你能给我们看你的真实代码而不是伪代码吗?那是我的真实代码而不是最后的代码line@thefragileomen当前位置不是。这甚至无法通过语法检查。因此,可能会将文件分为两部分,一部分包含文件名,另一部分包含MD5,然后将这两部分都放入各自的列表中。例如,如果文件名[200]包含.doc,则将MD5[200]复制到一个新的txt文件中?是的,我认为这是一个可能的解决方案。您还可以将其他信息(SHA-1,…)与保存的索引一起使用!