python 三种方法实现对Excel表格的读写


Posted in Python onNovember 19, 2020

1、使用xlrd模块读取数据

# 将excel表格内容导入到tables列表中
def import_excel(tab):
 # 创建一个空列表,存储Excel的数据
 tables = []
 for rown in range(1, tab.nrows):
 array = {'设备名称': '', '框': '', '槽': '', '端口': '', 'onuid': '', '认证密码': '', 'load': '', 'checkcode': ''}
 array['设备名称'] = tab.cell_value(rown, 0)
 array['框'] = tab.cell_value(rown, 1)
 array['槽'] = tab.cell_value(rown, 2)
 array['端口'] = tab.cell_value(rown, 3)
 array['onuid'] = tab.cell_value(rown, 4)
 array['认证密码'] = tab.cell_value(rown, 9)
 array['load'] = tab.cell_value(rown, 10)
 array['checkcode'] = tab.cell_value(rown, 11)
 tables.append(array)
 return tables
# 导入需要读取Excel表格的路径
data = xlrd.open_workbook(r'G:\\test.xlsx')
table = data.sheets()[0]
for i in import_excel(table):
 print(i)

2、使用xlwt和openpyxl进行写出

import pandas as pd
# 要事先下载好xlwt和openpyxl模块
def export_excel(tab):
 # 将字典列表转换为DataFrame
 pf = pd.DataFrame(list(tab))
 # 指定字段顺序
 order = ['设备名称', '框', '槽', '端口', 'onuid', '认证密码', 'load', 'checkcode']
 pf = pf[order]
 # 将列名替换为中文
 columns_map = {
 '设备名称': '设备名称',
 '框': '框',
 '槽': '槽',
 '端口': '端口',
 'onuid': 'onuid',
 '认证密码': '认证密码',
 'load': 'load',
 'checkcode': 'checkcode'
 }
 pf.rename(columns=columns_map, inplace=True)
 # 指定生成的Excel表格路径
 file_path = pd.ExcelWriter('G:\\test1.xlsx')
 # 替换空单元格
 pf.fillna(' ', inplace=True)
 # 输出
 pf.to_excel(file_path, encoding='utf-8', index=False)
 # 保存表格
 file_path.save()
export_excel(tables)

3、使用xlsxwriter写出

def export_excel(data, fileName): # xlsxwriter库储存数据到excel
 workbook = xw.Workbook(fileName) # 创建工作簿
 worksheet1 = workbook.add_worksheet("sheet1") # 创建子表
 worksheet1.activate() # 激活表
 title = ['设备名称', '框', '槽', '端口', 'onuid', '认证密码', 'load', 'checkcode'] # 设置表头
 worksheet1.write_row('A1', title) # 从A1单元格开始写入表头
 i = 2 # 从第二行开始写入数据
 for j in range(len(data)):
 insertData = [data[j]["设备名称"], data[j]["框"], data[j]["槽"], data[j]["端口"], data[j]["onuid"], data[j]["认证密码"],
   data[j]["load"], data[j]["checkcode"]]
 row = 'A' + str(i)
 worksheet1.write_row(row, insertData)
 i += 1
 workbook.close() # 关闭表

 export_excel(import_excel(table), "G:\\test1.xlsx")

网上有人说第三种写入速度快,本人亲测貌似没啥其区别,根据个人爱好写吧,但是xlsxwriter模块只能写入,无法修改貌似

以上就是python 三种方法实现对Excle表格的读写的详细内容,更多关于python excle表格的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python中一些自然语言工具的使用的入门教程
Apr 13 Python
Python使用base64模块进行二进制数据编码详解
Jan 11 Python
python实现校园网自动登录的示例讲解
Apr 22 Python
python实现Dijkstra静态寻路算法
Jan 17 Python
Python socket非阻塞模块应用示例
Sep 12 Python
原来我一直安装 Python 库的姿势都不对呀
Nov 11 Python
Python字节单位转换实例
Dec 05 Python
如何基于Python实现电子邮件的发送
Dec 16 Python
Python实现不规则图形填充的思路
Feb 02 Python
调整Jupyter notebook的启动目录操作
Apr 10 Python
自学python用什么系统好
Jun 23 Python
Pytorch 如何实现常用正则化
May 27 Python
基于python模拟bfs和dfs代码实例
Nov 19 #Python
Python 多进程、多线程效率对比
Nov 19 #Python
Python导入父文件夹中模块并读取当前文件夹内的资源
Nov 19 #Python
Pytorch实验常用代码段汇总
Nov 19 #Python
Ubuntu配置Pytorch on Graph (PoG)环境过程图解
Nov 19 #Python
python基于pygame实现飞机大作战小游戏
Nov 19 #Python
Python numpy大矩阵运算内存不足如何解决
Nov 19 #Python
You might like
PHP面向对象教程之自定义类
2014/06/10 PHP
Yii获取当前url和域名的方法
2015/06/08 PHP
php车辆违章查询数据示例
2016/10/14 PHP
CI框架实现优化文件上传及多文件上传的方法
2017/01/04 PHP
firefox中JS读取XML文件
2006/12/21 Javascript
js设置cookie过期及清除浏览器对应名称的cookie
2013/10/24 Javascript
jquery绑定事件不生效的解决方法
2014/02/11 Javascript
js加载读取内容及显示与隐藏div示例
2014/02/13 Javascript
JavaScript程序员应该知道的45个实用技巧
2014/03/04 Javascript
jQuery中attr()方法用法实例
2015/01/05 Javascript
js插件YprogressBar实现漂亮的进度条效果
2015/04/20 Javascript
浅谈Jquery核心函数
2015/06/18 Javascript
基于javascript实现全屏漂浮广告
2016/03/31 Javascript
浅谈js键盘事件全面控制
2016/12/01 Javascript
Node.js连接Sql Server 2008及数据层封装详解
2018/08/27 Javascript
[47:55]Ti4第二日主赛事败者组 NaVi vs EG 1
2014/07/20 DOTA
举例讲解如何在Python编程中进行迭代和遍历
2016/01/19 Python
深入浅析python定时杀进程
2016/06/06 Python
利用Opencv中Houghline方法实现直线检测
2018/02/11 Python
Python3.5运算符操作实例详解
2019/04/25 Python
pyinstaller打包单个exe后无法执行错误的解决方法
2019/06/21 Python
一篇文章搞定Python操作文件与目录
2019/08/13 Python
pip install python 快速安装模块的教程图解
2019/10/08 Python
python 创建一维的0向量实例
2019/12/02 Python
基于python实现查询ip地址来源
2020/06/02 Python
Python with语句用法原理详解
2020/07/03 Python
HTML5 history新特性pushState、replaceState及两者的区别
2015/12/26 HTML / CSS
吉列剃须刀美国官网:Gillette美国
2018/07/13 全球购物
蒙蒂塞罗商店:Monticello Shop
2018/11/25 全球购物
Visual-Click葡萄牙:欧洲领先的在线眼镜商
2020/02/17 全球购物
CK澳大利亚官网:Calvin Klein澳大利亚
2020/12/12 全球购物
个人实用简单的自我评价
2013/10/19 职场文书
行政总监岗位职责
2013/12/05 职场文书
淘宝客服自我总结鉴定
2014/01/25 职场文书
电子商务实训报告总结
2014/11/05 职场文书
MATLAB 全景图切割及盒图显示的实现步骤
2021/05/14 Python