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解析xml成对应的html示例分享
Apr 02 Python
python实现对一个完整url进行分割的方法
Apr 29 Python
django实现分页的方法
May 26 Python
python之matplotlib学习绘制动态更新图实例代码
Jan 23 Python
好的Python培训机构应该具备哪些条件
May 23 Python
Python实现登陆文件验证方法
Oct 06 Python
python 读取Linux服务器上的文件方法
Dec 27 Python
漂亮的Django Markdown富文本app插件的实现
Jan 02 Python
python多线程调用exit无法退出的解决方法
Feb 18 Python
详解python3 GUI刷屏器(附源码)
Feb 18 Python
python-for x in range的用法(注意要点、细节)
May 10 Python
pytorch fine-tune 预训练的模型操作
Jun 03 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编写PDF文档生成器
2006/10/09 PHP
php中将字符串转为HTML的实体引用的一个类
2013/02/03 PHP
php天翼开放平台短信发送接口实现方法
2014/12/22 PHP
PHP中使用正则表达式提取中文实现笔记
2015/01/20 PHP
分享一个Laravel好用的Cache宏
2015/03/02 PHP
Yii2创建多界面主题(Theme)的方法
2016/10/08 PHP
ThinkPHP框架表单验证操作方法
2017/07/19 PHP
PHP中str_split()函数的用法讲解
2019/04/11 PHP
解决jquery .ajax 在IE下卡死问题的解决方法
2009/10/26 Javascript
原生javascript图片自动或手动切换示例附演示源码
2013/09/04 Javascript
获得Javascript对象属性个数的示例代码
2013/11/21 Javascript
JavaScript更改原始对象valueOf的方法
2015/03/19 Javascript
Bootstrap模仿起筷首页效果
2016/05/09 Javascript
JS中使用FormData上传文件、图片的方法
2016/08/07 Javascript
vue-cli 自定义指令directive 添加验证滑块示例
2017/10/19 Javascript
vue 点击展开显示更多(点击收起部分隐藏)
2019/04/09 Javascript
vue读取本地的excel文件并显示在网页上方法示例
2019/05/29 Javascript
深度了解vue.js中hooks的相关知识
2019/06/14 Javascript
如何测量vue应用运行时的性能
2019/06/21 Javascript
微信小程序实现图片翻转效果的实例代码
2019/09/20 Javascript
JavaScript动画实例之粒子文本的实现方法详解
2020/07/28 Javascript
基于javascript的无缝滚动动画1
2020/08/07 Javascript
angular *Ngif else用法详解
2020/12/15 Javascript
python和shell实现的校验IP地址合法性脚本分享
2014/10/23 Python
举例详解Python中的split()函数的使用方法
2015/04/07 Python
python中的错误处理
2016/04/10 Python
Python学习思维导图(必看篇)
2017/06/26 Python
python获取指定字符串中重复模式最高的字符串方法
2018/06/29 Python
DJANGO-URL反向解析REVERSE实例讲解
2019/10/25 Python
中间件分为哪几类
2012/03/14 面试题
培训协议书范本
2014/04/22 职场文书
邓小平理论心得体会
2014/09/09 职场文书
2014年前台接待工作总结
2014/12/05 职场文书
2015年护士节慰问信
2015/03/23 职场文书
新教师2015年度工作总结
2015/07/22 职场文书
MongoDB使用场景总结
2022/02/24 MongoDB