本节利用包openpyxl,实现Excel文件的读取、写入,以及创建Excel文件的基础操作。
操作逻辑
首先,生成一个Workbook对象,这个对象相当于是一个在内存中的Excel文件,它可以包含多个表单。Workbook对象既可以通过读取一个Excel文件来创建,也可以直接在内存中创建。它们的实现代码分别是:
#读取一个Excel文件 workbook = load_workbook('文件路径') #在内存中创建Excel文件 workbook_write = Workbook()
然后,在Workbook对象中生成表单对象,表单对象也同样读取Workbook对象中已包含的表单或创建表单。它们实现的代码分别是:
#读取一个表单 sheet = workbook.get_sheet_by_name('表单名称') #创建一个表单 sheet = workbook_write.active
对表单的操作完成后,可以将Workbook对象保存本地硬盘的Excel文件中,该文件可以是已有的文件(覆盖),也可以是新创建的文件。写入的代码是:
workbook.save('文件路径')
1.导入openpyxl包
from openpyxl import Workbook from openpyxl import load_workbook from openpyxl.writer.excel import ExcelWriter
2.加载Excel文件
相当于双击Excel文件并打开。我们以打开F盘根目录下的“红楼梦自动提词结果.xlsx”为例。
excel_file_path = "F:红楼梦自动提词结果.xlsx" workbook = load_workbook(excel_file_path)
如果有想学习python的程序员,可来我的python学习扣qun:711944363,免费送python的视频教程噢!我每晚上8点还会在群内直播讲解python知识,欢迎大家前来学习。
3.获取Excel表单信息(相当于查看Excel所有表单的列表)
相当于查看Excel里的表单列表。在这个Excel文件中有两个表单,分别为“WORD”和“GROUP”
sheetnames = workbook.get_sheet_names() #获得表单名字列表 print(sheetnames)
结果
['WORD', 'GROUP']
4.读取Excel表单内容
相当于查看Excel里的表单的内容。样例Excel的第一个表单WORD中前20行的内容如下:
sheet = workbook.get_sheet_by_name(sheetnames[0]) #打开Excel的第1个表格 print('读取第1行-第5行中第一列的内容:') for i in range(1,5): print(sheet.cell(row=i,column=1).value) print('第2行的全部内容:') for cell in sheet["2"]: print(cell.value)
结果
第1行-第5行的内容: STRING 菩萨 琥珀 玻璃 第2行的全部内容: 菩萨 26 20948.236 3.2188885 3.6280146 14.287398 None None None
5.修改Excel表格内容
通过下面的代码将Excel中单元格B2内的数值修改为10000,并将Excel文件保存到刚才的位置。
sheet['B2'] = 10000 workbook.save("F:红楼梦自动提词结果.xlsx") #保存Excel文件
修改之后的Excel文件内容如下:
6.创建Excel文件
通过下面的代码,在F盘的根目录下创建一个名叫“Test.xlsx”的Excel文件,它只有一个表单,表单的A1单元格内为文本“测试信息”,A2单元格内为数字135。
workbook_write = Workbook() #创建Excel sheet_write = workbook_write.active #创建sheet sheet_write['A1'] = '测试信息' sheet_write['A2'] = 135 workbook_write.save("F:Test.xlsx") #将Excel写出到文件
创建之后的Test.xlsx文件下内容如下: