我有一个大约60列的csv文件。我想选择列2
,11
,然后选择从25
开始到最后一列的所有列。我写了这个简短的代码,但这给了我错误:TypeError: cannot concatenate 'str' and 'list' objects
。
file_read = open('file1.csv', mode='r')
file_write = open('file2.csv', mode ='w')
reader = csv.reader(file_read)
writer = csv.writer(file_write)
for row in reader:
writer.writerow(row[2] + row[11] + row[25:])
file_write.close()
我知道它是因为使用row[25:]
和其他特定列,但我怎么能写这个呢?
PS:请原谅我在python中缺乏理解,因为我正在学习它
答案 0 :(得分:2)
row[25:]
是一个列表 - 来自row
列表的切片,row[2]
和row[11]
是字符串 - 这就是您获得TypeError: cannot concatenate 'str' and 'list' objects
的原因。
相反,“连接”列表:
writer.writerow([row[2]] + [row[11]] + row[25:])