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实现2014火车票查询代码分享
Jan 10 Python
Flask框架中密码的加盐哈希加密和验证功能的用法详解
Jun 07 Python
Python输出带颜色的字符串实例
Oct 10 Python
python Flask实现restful api service
Dec 04 Python
python selenium UI自动化解决验证码的4种方法
Jan 05 Python
Python3实现的简单验证码识别功能示例
May 02 Python
对python判断ip是否可达的实例详解
Jan 31 Python
Python判断两个文件是否相同与两个文本进行相同项筛选的方法
Mar 01 Python
python实现五子棋人机对战游戏
Mar 25 Python
使用pytorch完成kaggle猫狗图像识别方式
Jan 10 Python
Keras 在fit_generator训练方式中加入图像random_crop操作
Jul 03 Python
Python自动发送和收取邮件的方法
Aug 12 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
神族 PROTOSS 概述
2020/03/14 星际争霸
如何在PHP中使用Oracle数据库(3)
2006/10/09 PHP
PHP数组内存耗用太多问题的解决方法
2010/04/05 PHP
PHP OPCode缓存 APC详细介绍
2010/10/12 PHP
PHP的博客ping服务代码
2012/02/04 PHP
php命名空间设计思想、用法与缺点分析
2019/07/17 PHP
ToolTips JQEURY插件之简洁小提示框效果
2011/11/19 Javascript
解析img图片没找到onerror事件 Stack overflow at line: 0
2013/12/23 Javascript
JS实现OCX控件的事件响应示例
2014/09/17 Javascript
再谈JavaScript异步编程
2016/01/27 Javascript
详解angularjs利用ui-route异步加载组件
2017/05/21 Javascript
node通过express搭建自己的服务器
2017/09/30 Javascript
VueJs 搭建Axios接口请求工具
2017/11/20 Javascript
详解操作虚拟dom模拟react视图渲染
2018/07/25 Javascript
JavaScript中的回调函数实例讲解
2019/01/27 Javascript
ionic+html5+API实现双击返回键退出应用
2019/09/17 Javascript
vue中是怎样监听数组变化的
2020/10/24 Javascript
Python第三方Window模块文件的几种安装方法
2018/11/22 Python
详解python运行三种方式
2019/05/13 Python
对python中的*args与**kwgs的含义与作用详解
2019/08/28 Python
大家都说好用的Python命令行库click的使用
2019/11/07 Python
django 框架实现的用户注册、登录、退出功能示例
2019/11/28 Python
美国高档百货Nordstrom的折扣店:Nordstrom Rack
2017/11/13 全球购物
大学毕业生通用求职信
2013/09/28 职场文书
建筑工程专业毕业生自荐信
2013/10/19 职场文书
应届毕业生自荐书
2014/06/18 职场文书
大四毕业生自荐书
2014/07/05 职场文书
陈安之励志演讲稿
2014/08/21 职场文书
中学生教师节演讲稿
2014/09/03 职场文书
购房公证委托书(2014版)
2014/09/12 职场文书
2014年乡镇纪委工作总结
2014/12/19 职场文书
学生个人评语大全
2015/01/04 职场文书
python爬取某网站原图作为壁纸
2021/06/02 Python
laravel添加角色和模糊搜索功能的实现代码
2021/06/22 PHP
Vue的列表之渲染,排序,过滤详解
2022/02/24 Vue.js
macos系统如何实现微信双开? mac登录两个微信以上微信的技巧
2022/07/23 数码科技