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 encode和decode的妙用
Sep 02 Python
web.py中调用文件夹内模板的方法
Aug 26 Python
python通过apply使用元祖和列表调用函数实例
May 26 Python
PyChar学习教程之自定义文件与代码模板详解
Jul 17 Python
Python中三元表达式的几种写法介绍
Mar 04 Python
Python求均值,方差,标准差的实例
Jun 29 Python
Pandas_cum累积计算和rolling滚动计算的用法详解
Jul 04 Python
TensorFlow获取加载模型中的全部张量名称代码
Feb 11 Python
python+adb命令实现自动刷视频脚本案例
Apr 23 Python
Keras预训练的ImageNet模型实现分类操作
Jul 07 Python
使用python画出逻辑斯蒂映射(logistic map)中的分叉图案例
Dec 11 Python
Pytorch中的学习率衰减及其用法详解
Jun 05 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动态生成JavaScript代码
2009/03/09 PHP
Yii2中YiiBase自动加载类、引用文件方法分析(autoload)
2016/07/25 PHP
实例分析PHP中PHPMailer发邮件
2017/12/13 PHP
PHP获取数据库表中的数据插入新的表再原删除数据方法
2018/10/12 PHP
javascript[js]获取url参数的代码
2007/10/17 Javascript
javascript天然的迭代器
2010/10/29 Javascript
基于jquery的修改当前TAB显示标题的代码
2010/12/11 Javascript
实现web打印的各种方法介绍及实现代码
2013/01/09 Javascript
jQuery让控件左右移动的三种实现方法
2013/09/08 Javascript
js的回调函数详解
2015/01/05 Javascript
JavaScript简介
2015/02/15 Javascript
JS+CSS实现DIV层的展开、收缩效果
2016/01/28 Javascript
javascript的BOM
2016/05/03 Javascript
AngularJS基础 ng-keypress 指令简单示例
2016/08/02 Javascript
总结Node.js中的一些错误类型
2016/08/15 Javascript
求js数组的最大值和最小值的四种方法
2017/03/03 Javascript
谈谈JS中的!!
2017/12/07 Javascript
浅谈mvvm-simple双向绑定简单实现
2018/04/18 Javascript
JS伪继承prototype实现方法示例
2018/06/20 Javascript
Python实现把utf-8格式的文件转换成gbk格式的文件
2015/01/22 Python
Python lxml模块安装教程
2015/06/02 Python
在Python的Django框架中创建和使用模版
2015/07/15 Python
python绘制条形图方法代码详解
2017/12/19 Python
解决Python二维数组赋值问题
2019/11/28 Python
记录模型训练时loss值的变化情况
2020/06/16 Python
python使用requests库爬取拉勾网招聘信息的实现
2020/11/20 Python
垃圾回收的优点和原理
2014/05/16 面试题
银行委托书范本
2014/04/04 职场文书
节约用水倡议书
2014/04/16 职场文书
《风娃娃》教学反思
2014/04/19 职场文书
学雷锋先进个人事迹
2014/05/26 职场文书
三八妇女节趣味活动方案
2014/08/23 职场文书
个人求职自荐信范文
2015/03/06 职场文书
2015年教师党员个人总结
2015/11/24 职场文书
小学生作文之《压岁钱的烦恼》
2019/09/27 职场文书
Qt自定义Plot实现曲线绘制的详细过程
2021/11/02 Python