【发布时间】:2014-04-12 06:19:55
【问题描述】:
我对 python 很陌生,我正在使用 xlwt 编写列表和 excel 表。我使用 st.write(ID,name) 创建了 6 个列。我的第一个疑问是 write 中的 ID 是 rowID 还是 columnID(意味着 write(1,'abc') 将写入第一行或第一列)?
现在我有 6 个列表,我想将每个列表写入工作表中的一列。如何编写? st.write(colIDX,0,list1) 是一个有效的写入语句(它会将 list1 写入第 0 列)吗?如果没有,那我该怎么办?
更新:这是我目前正在使用的代码,但它抛出异常为Exception: invalid worksheet name u'test'
import xlwt
import os
from merge import *
workbook = xlwt.Workbook()
sheet = workbook.add_sheet('test')
sheet.write(0,0,'Column1')
sheet.write(0,1,'Column2')
sheet.write(0,2,'Column3')
sheet.write(0,3,'Column4')
lst1 = list()
lst2 = list()
lst3 = lt3 + lt4 #lt1 lt2 lt3 lt4 are lists are from merge file
lst4 = lt1 + lt2
pt = 'C:/Users/Desktop/tmp'
for filename in os.listdir(pt):
lst1.append(filename)
lst2.append('PST')
ng = 'C:/Users/Desktop/tmp2'
for filename in os.listdir(ng):
lst1.append(filename)
lst2.append('NG')
column_number = 0
for row_number, item in enumerate(lst1):
sheet.write(row_number, column_number, item)
column_number = 1
for row_number, item in enumerate(lst2):
sheet.write(row_number, column_number, item)
column_number = 2
for row_number, item in enumerate(lst3):
sheet.write(row_number, column_number, item)
column_number = 3
for row_number, item in enumerate(lst4):
sheet.write(row_number, column_number, item)
workbook.save('test.xls')
【问题讨论】: