0
我有數百個CSV文件,我正在嘗試編寫一個Python腳本來解析所有這些文件並打印出具有匹配字符串的行。如果我們能夠使用一個字符串(而不是字符串列表)來工作,我會很高興。使用Python 2.7.5。到目前爲止,我已經想通了:使用Python CSV和glob找到匹配的字符串並打印行
在Python csv模塊將打印在特定列匹配的字符串的行(左起第八列):
import csv
reader = csv.reader(open('2015-08-25.csv'))
for row in reader:
col8 = str(row[8])
if col8 == '36862210':
print row
因此上述作品一個.csv文件。現在我需要使用glob解析數百個.csv文件。 glob模塊會打印出所有的文件名與此代碼:
import glob
for name in glob.glob('20??-??-??.csv'):
print name
我試圖把二者連成一個劇本,但錯誤信息上寫着:
File "test7.py", line 6, in reader = csv.reader(open(csvfiles)) TypeError: coercing to Unicode: need string or buffer, list found
import csv
import glob
csvfiles = glob.glob('20??-??-??.csv')
for filename in csvfiles:
reader = csv.reader(open(csvfiles))
for row in reader:
col8 = str(row[8])
if col8 == '36862210':
print row
謝謝,它的工作原理!但是,它不喜歡每個.csv文件頂部的兩個空行。我已經開始了另一篇文章http://stackoverflow.com/questions/32216221/python-csv-skip-first-two-empty-rows – adelaide01