1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 用xlrd包读取Excel文件-尽量不用xlwt包写入Excel文件最多能支持65536行数据。

用xlrd包读取Excel文件-尽量不用xlwt包写入Excel文件最多能支持65536行数据。

时间:2019-01-30 07:59:48

相关推荐

用xlrd包读取Excel文件-尽量不用xlwt包写入Excel文件最多能支持65536行数据。

1. 引有包

import xlrd

打开文件

data = good_ivy = xlrd.open_workbook(r'商品库存.xls')

获取你要打开的sheet文件

# table = data.sheets()[0]# print(table.nrows)# 获取所有sheetsheet_name = data.sheet_names()[0]# 根据sheet索引或者名称获取sheet内容sheet = data.sheet_by_index(0) # sheet索引从0开始

获取指定单元格里面的值

sheet.cell_value(第几行,第几列)

获取某行或者某列的值

print(sheet.row(0))print('获取第二行的内容')print(sheet.row(1))# sheet.cell_value(第几行,第几列)# 获取整行和整列的值(数组)# rows = sheet.row_values(1) # 获取第2行内容# cols = sheet.col_values(2) # 获取第3列内容print(sheet.row_values(1, 0, 10)) #获取第二行,从第一列到第10列的值,不包括第10列# sheet的名称,行数,列数print(sheet.name, sheet.nrows, sheet.ncols)

github /ln0491/python_learning

C、尽量不用xlwt包写入Excel文件

I、原因

在xlwt中生成的xls文件最多能支持65536行数据。

II、如果写入过多,会报错

由于数据太多,会报这个错误:

ValueError: row index (65536)not an intin range(65536)错误

xlwt写入文件

# !/usr/bin/python# -*-coding:utf-8-*-# @Author: 刘楠# @Time: /12/3 10:09# @File : test01.pyimport xlwt# 1. 导入模块import xlwtdef write_excel():# 2. 创建Excel工作薄myWorkbook = xlwt.Workbook()# 3. 添加Excel工作表mySheet = myWorkbook.add_sheet('A Test Sheet')for i in range(0, 65536):mySheet.write(i, 0, i)mySheet.write(i, 1, i)myWorkbook.save('xlwt_excelFile.xls')if __name__ == '__main__':# 写入Excelwrite_excel()print('写入成功')

xlsxwriter

# !/usr/bin/python# -*-coding:utf-8-*-# @Author: 刘楠# @Time: /12/3 11:26# @File : test01.pyimport xlsxwriter# 写exceldef write_excel():workbook = xlsxwriter.Workbook('chat.xlsx') # 创建一个excel文件worksheet = workbook.add_worksheet(u'sheet1') # 在文件中创建一个名为TEST的sheet,不加名字默认为sheet1worksheet.set_column('A:A', 20) # 设置第一列宽度为20像素bold = workbook.add_format({'bold': True}) # 设置一个加粗的格式对象worksheet.write('A1', 'HELLO') # 在A1单元格写上HELLOworksheet.write('A2', 'WORLD', bold) # 在A2上写上WORLD,并且设置为加粗worksheet.write('B2', U'中文测试', bold) # 在B2上写上中文加粗worksheet.write(2, 0, 32) # 使用行列的方式写上数字32,35,5worksheet.write(3, 0, 35.5) # 使用行列的时候第一行起始为0,所以2,0代表着第三行的第一列,等价于A4worksheet.write(4, 0, '=SUM(A3:A4)') # 写上excel公式workbook.close()if __name__ == '__main__':# 写入Excelwrite_excel();print('写入成功')

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。