如何检查列表是否包含具有特定值的条目?

时间:2016-12-07 18:09:47

标签: python

解释我的问题有点难,但我会尽我所能。

我有一个大约38k条目的.csv文件,所有条目都是相同的格式。格式为: Name1,party1,name2,party2,date,URL

现在,我需要搜索此.csv文件,并检查每个条目是否存在已转换的名称和参与方。

例如,我有以下条目:

S. Faber, CDA, J.A. v. Kemenade, PvdA, 1980.06.24, http://polidocs.nl/XML/MOT/1970028.xml   

其中

name1 = S. Faber, 
party1 = CDA, 
name2 = J.A. v. Kemenade, 
party2 = PvdA, 
date = 1980.06.24, 
URL = http://polidocs.nl/XML/MOT/1970028.xml

现在我需要检查是否有一个包含这些确切值的条目: J.A. v.Kememande,PvdA,S。Faber,CDA,日期,URL< - 其中日期和URL无关紧要

有什么想法吗?

3 个答案:

答案 0 :(得分:0)

您可以尝试内置的csv模块及其DictReader类。尝试这样的事情:

your_data = []
with open('data.csv') as csv_file:
     reader = csv.DictReader(csv_file)
     for row in reader:
         # check all of your conditions here
         if row['name1'] == 'S. Faber' and row['party1'] == 'CDA':
             your_data.append(row)

我没有测试代码。但看起来很好。您可以找到一个示例以及更多here

答案 1 :(得分:0)

如果您对数据格式有所了解,则无需创建对象。

csvfile

注意字符串末尾的附加fo = open("data.csv", "r") lines = fo.readlines() "S. Faber, CDA, J.A. v. Kemenade, PvdA, 1980.06.24, http://polidocs.nl/XML/MOT/1970028.xml\n" in lines

答案 2 :(得分:0)

如果我理解你的问题,下面的代码应该可以帮到你:

203