我有一个带有字段的csv文件

joburl, jobtitle,totalviews


我正在尝试分别检索所有jobtitle的值。到目前为止,我阅读了所有jobtitle的所有joburl并将唯一的jobtitle放在单独的文本文件中。现在,我想读取所有文本文件,将文本文件中的jobtitle与csv文件中的jobtitle匹配,并返回joburl并查看特定jobtitle的值。
代码是:

with open('Pagepath_detail.csv', 'rt') as f:
 with open('individual_jobtitle.txt') as title:
  for t in title:
      job = [row for row in csv.reader(f) if row[1] == t]
      print job


其中pagepath_detail是我要从中提取值的csv文件。
该代码返回一个空数组。但是同时,如果我尝试直接方法,例如:

with open('Pagepath_detail.csv', 'rt') as f:
 job = [row for row in csv.reader(f) if row[1] == 'job1']
 print job


上面的代码运行完美。
我究竟做错了什么?

最佳答案

如果仔细看一下代码,循环就会有一个小问题。

您已将循环的位置交换为特定的。试试下面的代码,它应该很适合您。

with open('out.txt','r') as title:
    for t in title:
        with open('data.csv','r') as iFile:
            job = [row for row in csv.reader(iFile) if row[1].lstrip().rstrip() == t.lstrip().rstrip()]
            print job

关于python - CSV匹配值python,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22802401/

10-12 02:24