【发布时间】:2015-10-01 18:40:16
【问题描述】:
我正在尝试编写一个脚本,该脚本将打开一个 CSV 文件,并根据csv.csv 的第 4 列中唯一电话号码的匹配条件将该文件中的行写入新的 CSV 文件。电话号码总是在第 4 列中,并且在文件中经常重复,但是其他列通常是唯一的,因此每一行本质上都是唯一的。
我正在阅读的 csv 文件中的一行如下所示:(TN 为 9259991234)
2,PPS,2015-09-17T15:44,9259991234,9DF51758-A2BD-4F65-AAA2
我在下面的代码中遇到错误,说“_csv.writer”不可迭代,我不确定如何修改我的代码来解决问题。
import csv
import sys
import os
os.chdir(r'C:\pTest')
with open(r'csv.csv', 'rb') as f:
reader = csv.reader(f, delimiter=',')
with open (r'new_csv.csv', 'ab') as new_f:
writer = csv.writer(new_f, delimiter=',')
for row in reader:
if row[3] not in writer:
writer.writerow(new_f)
【问题讨论】:
-
您希望
row[3] not in writer做什么?您不能测试作家的会员资格;该数据已经写入。如果您想跟踪已处理的电话号码,则需要保留一个单独的set()对象并对其进行测试。
标签: python python-2.7 csv