在我们做平常工作中都会遇到操作excel,那么今天写一篇,如何通过python操作excel
当然python操作excel的库有很多,比如pandas,xlwt/xlrd,openpyxl等,每个库都有不同的区别,具体的区别,大家一起来看看吧~
xlwt/xlrd
xlrd是对于Excel进行读取,xlrd 操作的是xls/xlxs格式的excel
xlwt是对于Excel进行读取,xlwt操作的是xls格式的excel
安装
xlrd是python的第3方库,需要通过pip进行安装
pip install xlrd
1、导入xlrd模块
2、打开Excel完成实例化
3、通过下标获取对应的表(可以通过表名获取)
4、通过列,行或者坐标获取表格的数据
安装
xlwt属于python的第3方库,需要通过pip进行安装
pip install xlwt
写入Excel数据
1、首先导入xlwt第3方库
2、创建一个workbook模块,相当于创建一个xlwt文件
3、通过add_sheet创建一个表格
4、使用write函数进行对表完成写的操作
5、把写完的数据导入到Excel中
openpyxl
OpenPyXl是一个Python的模块 可以用来处理excle表格
安装:
xlrd是python的第3方库,需要通过pip进行安装
pip install openpyxl
使用时再代码内 from openpyxl import Workbook或者from openpyxl import load_workbook
区别在于前者不需要有excle文件存在 后者需要传入一个excle文件
前者可以凭空产生一个 后者不行
使用openpyxl 写入Excel数据
1、获取workbook
2、获取 worksheet
3、再然后 获取单元格 进行操作
4、保存文件
pandas
写入Excel中数据的除了xlwt和openpyxl之外。Pandas也是可以实现这种功能的。
它纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具,能使我们快速便捷地处理数据。接下来我们就看看如何用pandas读写excel。
1. 读取excel
读取excel主要通过read_excel函数实现,除了pandas还需要安装第三方库xlrd。
2. 写入excel
写入excel主要通过pandas构造DataFrame,调用to_excel方法实现。
今天我们准备读取的数据是之前爬取瓜子二手车网站的一些数据,部分数据展示如下:
我们今天要展示的就是使用上述介绍的三种方法将txt文档的数据写入到excel中。
# 标题列表 columns = [] # 数据列表 datas = [] with open('二手车.txt', encoding='utf-8') as fin: # 首行判断 is_first_line = True for line in fin: line = line[:-1] if is_first_line: is_first_line = False columns = line.split('\t') continue datas.append(line.split('\t')) ic(columns) ic(datas)
读取的行列表和数据列表数据展示如下:
数据成功读取出来,接下来我们使用三种方式写入到excel中
使用xlwt生成xls的excel文件
# 使用xlwt生成xls的excel文件 import xlwt workbook = xlwt.Workbook(encoding='utf-8') sheet = workbook.add_sheet('瓜子二手车') for col, column in enumerate(columns): sheet.write(0, col, column) for row, data in enumerate(datas): for col, column_data in enumerate(data): sheet.write(row+1, col, column_data) workbook.save('瓜子二手车1.xls')
使用openpyxl生成xlsx的excel文件
# 使用openpyxl生成xlsx的excel文件 from openpyxl import Workbook workbook = Workbook() sheet = workbook.active sheet.title = '默认title' sheet.append(columns) for data in datas: sheet.append(data) workbook.save('瓜子二手车2.xlsx')
使用pandas生成xlsx的excel文件
# 使用pandas生成xlsx的excel文件 import pandas as pd rcv_data = pd.read_csv('二手车.txt', sep='\t') rcv_data.head() ic(rcv_data) rcv_data.to_excel('瓜子二手车3.xlsx', index = False)
以上就是今天给大家介绍的三种数据写入excel的方法,
这写方法在实际工作中需求还是很高的,有兴趣的小伙伴可以操作一下
有问题,评论区间~~