【发布时间】:2016-12-21 08:09:44
【问题描述】:
您好,我有一个 csv 文件,其中有两列,一列是数字,另一列是字母,格式如下:
1234 k
343 o
5687 uiuuo
我要做的就是用以前的值填充空白行。我已经编写了将我的工作保存在新 csv 中的代码,但我收到一条错误消息:
b = w[1]
IndexError: list index out of range
这是我的代码
import csv
with open('col.csv', 'r') as f:
reader = csv.reader(f)
my_list = list(reader)
#print my_list[1]
#x = my_list[1]
#print x[0]
x = 0
for count in my_list:
w = my_list[x]
a = w[0]
b = w[1]
print (a, b)
#print 'a', a , 'b', b
if a == '' and b == '' and x < 3044:
h = x - 1
my_list[x] = my_list[h]
#print 'my_list[x]', my_list[x]
x = x + 1
#print my_list[x]
elif a != '' and b != '' and x < 3044:
my_list[x] = (a,b)
x = x + 1
# print my_list[x]
writer = csv.writer(open('C:/Users/user/Desktop/col2.csv', 'wb'))
#for count in my_list:
data = my_list
for row in data:
writer.writerow(row)
#print count
【问题讨论】: