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的Flask框架中@app.route的用法教程
Mar 31 Python
python生成随机密码或随机字符串的方法
Jul 03 Python
PyQt5每天必学之单行文本框
Apr 19 Python
Python 加密与解密小结
Dec 06 Python
PyQt5笔记之弹出窗口大全
Jun 20 Python
Python二维码生成识别实例详解
Jul 16 Python
浅谈python已知元素,获取元素索引(numpy,pandas)
Nov 26 Python
tensorboard 可以显示graph,却不能显示scalar的解决方式
Feb 15 Python
Python基于数列实现购物车程序过程详解
Jun 09 Python
PyQt5的相对布局管理的实现
Aug 07 Python
Python基于locals返回作用域字典
Oct 17 Python
Python函数式编程中itertools模块详解
Sep 15 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
3种php生成唯一id的方法
2015/11/23 PHP
PHP多个图片压缩成ZIP的方法
2020/08/18 PHP
设置iframe的document.designMode后仅Firefox中其body.innerHTML为br
2012/02/27 Javascript
js调用css属性写法
2013/09/21 Javascript
js获取input长度并根据页面宽度设置其大小及居中对齐
2014/08/22 Javascript
jQuery $命名冲突解决方案汇总
2014/11/13 Javascript
JavaScript通过join函数连接数组里所有元素的方法
2015/03/20 Javascript
小巧强大的jquery layer弹窗弹层插件
2015/12/06 Javascript
JS克隆,属性,数组,对象,函数实例分析
2016/11/26 Javascript
浅析Ajax语法
2016/12/05 Javascript
浅谈javascript中执行环境(作用域)与作用域链
2016/12/08 Javascript
jQuery插件FusionCharts绘制ScrollColumn2D图效果示例【附demo源码下载】
2017/03/22 jQuery
微信小程序 密码输入(源码下载)
2017/06/27 Javascript
详解webpack进阶之loader篇
2017/08/23 Javascript
微信小程序 如何引入外部字体库iconfont的图标
2018/01/31 Javascript
vue权限路由实现的方法示例总结
2018/07/29 Javascript
vue 组件开发原理与实现方法详解
2019/11/29 Javascript
jquery轮播图插件使用方法详解
2020/07/31 jQuery
vue 项目@change多个参数传值多个事件的操作
2021/01/29 Vue.js
Python类装饰器实现方法详解
2018/12/21 Python
Windows下Pycharm远程连接虚拟机中Centos下的Python环境(图文教程详解)
2020/03/19 Python
jupyter修改文件名方式(TensorFlow)
2020/04/21 Python
Python键鼠操作自动化库PyAutoGUI简介(小结)
2020/05/17 Python
Keras实现将两个模型连接到一起
2020/05/23 Python
python数据类型强制转换实例详解
2020/06/22 Python
日本航空官方网站:JAL
2019/06/19 全球购物
澳大利亚最受欢迎的女士度假服装:Kabana Shop
2020/10/10 全球购物
如何开启linux的ssh服务
2013/06/03 面试题
材料物理专业大学毕业生求职信
2013/10/15 职场文书
网站编辑求职信
2013/10/17 职场文书
班主任工作年限证明
2014/01/12 职场文书
服装电子商务创业计划书
2014/01/30 职场文书
民政局办理协议离婚(范本)
2014/10/25 职场文书
2014年业务工作总结
2014/11/17 职场文书
2016年师德师风学习心得体会
2016/01/12 职场文书
JavaScript设计模式之原型模式详情
2022/06/21 Javascript