我正在将文件写入csv,但它说列表索引超出范围。这是我的代码。我有一个85个文件的目录。列表索引超出范围在Python中将文件写入csv
import os
import os.path
import csv
import re
import calendar
path = 'C:\\Users\\akhilpriyatam.k\\Desktop\\xls'
text_files = [os.path.splitext(f)[0] for f in os.listdir(path)]
for v in text_files:
os.chdir('C:\\Users\\akhilpriyatam.k\\Desktop\\xls')
with open('file1.csv', 'wb') as csvfile:
thedatawriter = csv.writer(csvfile,delimiter=',')
for v in text_files:
months = list(calendar.month_name[1:])
regex = re.compile('|'.join(months))
iter = re.finditer(regex, v)
if iter:
idx = [i for i in iter][0].start()
filename, timestamp = v[:idx],v[idx:-4]
print filename, timestamp
thedatawriter.writerow([filename,timestamp])
这是错误。
IndexError Traceback (most recent call last)
<ipython-input-145-0b1c3f1407ed> in <module>()
15 iter = re.finditer(regex, v)
16 if iter:
---> 17 idx = [i for i in iter][0].start()
18 filename, timestamp = v[:idx],v[idx:-4]
19 print filename, timestamp
IndexError: list index out of range
总是添加问题** FULL **错误消息(追踪) - 有许多有用的信息 - 即。这使得线问题等 – furas
IndexError回溯(最近最后调用)在() 15 ITER = re.finditer(正则表达式,V) 16如果ITER: - - > 17 idx = [i for iter iter] [0] .start() 18 filename,timestamp = v [:idx],v [idx:-4] 19 print filename,timestamp IndexError:list index超出范围 –
在问题中增加'Traceback' - 它会更具可读性,每个人都会阅读它。 – furas