如果第二列匹配字符串,我試圖從csv文件中刪除一行。我的csv文件包含以下信息:使用python刪除csv文件中的特定行
Name
15 Dog
我想要將其中的「Name」行刪除。我正在使用的代碼是:
import csv
reader = csv.reader(open("info.csv", "rb"), delimiter=',')
f = csv.writer(open("final.csv", "wb"))
for line in reader:
if "Name" not in line:
f.writerow(line)
print line
但「名稱」行未被刪除。我究竟做錯了什麼?
編輯:我使用了錯誤的分隔符。將其更改爲\ t工作。以下是現在可用的代碼。 導入CSV
reader = csv.reader(open("info.csv", "rb"), delimiter='\t')
f = csv.writer(open("final.csv", "wb"))
for line in reader:
if "Name" not in line:
f.writerow(line)
print line
你縮進你的代碼示例(for循環後無壓痕)搞砸了。你能解決這個問題嗎?由於沒有行被過濾掉,所以你可以假設「Name」不在行中總是評估爲「True」。也許你可以告訴我們該文件實際上是什麼樣子? –
抱歉有縮進,但保存時格式不正確。以防萬一http://pastebin.com/9XwBkUx7那裏也是 – Howli