我有兩個文件。一個是csv,包含搜索字符串(每行一個),另一個是一個巨大的文件,其中包含每行開始處的搜索詞,但有一些額外的信息,之後我想提取。搜索文件並將搜索詞的行保存到新文件
搜索項的文件被稱爲「search.csv」,看起來像這樣:
3ksr
3ky8
2g5w
2gou
包含其他信息的文件被稱爲「CSA.txt」,看起來像這樣:
3ksr,INFO.....
3ky8,INFO.....
2g5w,INFO.....
2gou,INFO.....
然而,它是一個非常大的文件(超過8MB),每個搜索詞有不止一個出現,但每次出現的信息都不相同。我有一些示例代碼:
import fileinput
import csv
csa = fileinput.input("CSA.dat", inplace=1)
pdb = csv.reader(open("search.csv"))
outfile = csv.writer(open("outfile.csv"), dielect = 'excel', delimiter = '\t')
for id in pdb:
for line in csa:
if id in str(line):
outfile.writerow([id, line])
csa.close()
但是,此代碼不工作,似乎刪除CSA.dat每次我試圖和運行它(其歸檔備份),或者說「文本文件忙」 。請幫忙!提前致謝!
如果有任何方向涉及任何引用,csv模塊非常方便... – bstpierre 2010-07-24 03:44:17