Python操作excel主要用到xlrd和xlwt这两个库,即xlrd是读excel,xlwt是写excel的库。
#打开Excel文件读取数据
import xlrd
data = xlrd.open_workbook(filename)
#对book和sheet的操作
table = data.sheets()[0]#通过索引顺序获取
table = data.sheet_by_index(sheet_indx))#通过索引顺序获取
table = data.sheet_by_name(sheet_name)#通过名称获取
names = data.sheet_names()#返回book中所有工作表的名字
data.sheet_loaded(sheet_name or indx)# 检查某个sheet是否导入完毕
#读取前十五行数据
for i in range(15):
for j in range(table.ncols):
data = table.row_values(i)[j] #读取的单元格的数据
>>> rows = sheet2.row_values(3) 行
>>> cols = sheet2.col_values(2) 列
补充:
xlwt最多只能写出6w+数据,如果有更多数据要使用另外一个包。
(dataFileName, extension) = os.path.splitext(os.path.basename(self.dataFile))
file = QFileDialog.getSaveFileName(self,"选择保存文件", dataFileName+".xls","xls(*.xls)")
filename = file[0]
if os.path.exists(filename):
os.remove(filename)
workbook = xlwt.Workbook(encoding='ascii')
worksheet = workbook.add_sheet(" ")
headers = [" "]
for i in range(len(headers)):
worksheet.write(0, i, headers[i])
for row in range(len(self.records)):
for columnin range(len(headers)):
data =self.convertField(self.records[row], column)
worksheet.write(row+1, column, data)
workbook.save(filename)