Python学习_几种存取xls/xlsx文件的方法总结


Posted in Python onMay 03, 2018

想在深度学习程序运行时动态存下来一些参数。

存成Excel文件查看方便,就查了几种方法,做个测试。因为我平常也不怎么用 Excel,简单的存取数据就够了。

xlwt/xlrd库 存Excel文件:(如果存储数据中有字符,那么写法还有点小小的变化)

import xlwt 
 
workbook = xlwt.Workbook(encoding='utf-8') 
booksheet = workbook.add_sheet('Sheet 1', cell_overwrite_ok=True) 
#存第一行cell(1,1)和cell(1,2) 
booksheet.write(0,0,34) 
booksheet.write(0,1,38) 
#存第二行cell(2,1)和cell(2,2) 
booksheet.write(1,0,36) 
booksheet.write(1,1,39) 
#存一行数据 
rowdata = [43,56] 
for i in range(len(rowdata)): 
 booksheet.write(2,i,rowdata[i]) 
workbook.save('test_xlwt.xls')

Python学习_几种存取xls/xlsx文件的方法总结

读Excel文件:(同样是对于数值类型数据)

import xlrd
workbook = xlrd.open_workbook('D:\\Py_exercise\\test_xlwt.xls')
print(workbook.sheet_names())  #查看所有sheet
booksheet = workbook.sheet_by_index(0) #用索引取第一个sheet
booksheet = workbook.sheet_by_name('Sheet 1') #或用名称取sheet
#读单元格数据
cell_11 = booksheet.cell_value(0,0)
cell_21 = booksheet.cell_value(1,0)
#读一行数据
row_3 = booksheet.row_values(2)
print(cell_11, cell_21, row_3)
>>>34.0 36.0 [43.0, 56.0]

openpyxl 库 存Excel文件:

from openpyxl import Workbook
 
workbook = Workbook()
booksheet = workbook.active #获取当前活跃的sheet,默认是第一个sheet
#存第一行单元格cell(1,1)
booksheet.cell(1,1).value = 6 #这个方法索引从1开始
booksheet.cell("B1").value = 7
#存一行数据
booksheet.append([11,87])
workbook.save("test_openpyxl.xlsx")

Python学习_几种存取xls/xlsx文件的方法总结

读Excel文件:

from openpyxl import load_workbook
 
workbook = load_workbook('D:\\Py_exercise\\test_openpyxl.xlsx')
#booksheet = workbook.active #获取当前活跃的sheet,默认是第一个sheet
sheets = workbook.get_sheet_names() #从名称获取sheet
booksheet = workbook.get_sheet_by_name(sheets[0])
rows = booksheet.rows
columns = booksheet.columns
#迭代所有的行
for row in rows:
 line = [col.value for col in row]
#通过坐标读取值
cell_11 = booksheet.cell('A1').value
cell_11 = booksheet.cell(row=1, column=1).value

原理上其实都一样,就写法上有些差别。

其实如果对存储格式没有要求的话,我觉得存成 csv文件 也挺好的:

import pandas as pd 
 
csv_mat = np.empty((0,2),float) 
csv_mat = np.append(csv_mat, [[43,55]], axis=0) 
csv_mat = np.append(csv_mat, [[65,67]], axis=0) 
csv_pd = pd.DataFrame(csv_mat) 
csv_pd.to_csv("test_pd.csv", sep=',', header=False, index=False)

因为它读起来非常简单:

import pandas as pd 
 
filename = "D:\\Py_exercise\\test_pd.csv" 
csv_data = pd.read_csv(filename, header=None) 
csv_data = np.array(csv_data, dtype=float)

以上这篇Python学习_几种存取xls/xlsx文件的方法总结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 测试实现方法
Dec 24 Python
python使用arp欺骗伪造网关的方法
Apr 24 Python
python将文本转换成图片输出的方法
Apr 28 Python
Python中工作日类库Busines Holiday的介绍与使用
Jul 06 Python
人机交互程序 python实现人机对话
Nov 14 Python
python使用pandas实现数据分割实例代码
Jan 25 Python
Python OpenCV中的resize()函数的使用
Jun 20 Python
python3.7 openpyxl 删除指定一列或者一行的代码
Oct 08 Python
Python数据分析pandas模块用法实例详解
Nov 20 Python
python使用opencv resize图像不进行插值的操作
Jul 05 Python
Python3.9新特性详解
Oct 10 Python
Python通过m3u8文件下载合并ts视频的操作
Apr 16 Python
Python使用win32 COM实现Excel的写入与保存功能示例
May 03 #Python
python调用xlsxwriter创建xlsx的方法
May 03 #Python
Python基于opencv的图像压缩算法实例分析
May 03 #Python
python实现数据导出到excel的示例--普通格式
May 03 #Python
python操作xlsx文件的包openpyxl实例
May 03 #Python
对Python字符串中的换行符和制表符介绍
May 03 #Python
pandas数据处理基础之筛选指定行或者指定列的数据
May 03 #Python
You might like
我的论坛源代码(九)
2006/10/09 PHP
在PHP中利用wsdl创建标准webservice的实现代码
2011/12/07 PHP
PHP autoload与spl_autoload自动加载机制的深入理解
2013/06/05 PHP
深入解析PHP中SESSION反序列化机制
2017/03/01 PHP
PHP+MySQL高并发加锁事务处理问题解决方法
2018/04/30 PHP
解决FireFox下[使用event很麻烦]的问题
2006/11/26 Javascript
javascript判断单选框或复选框是否选中方法集锦
2007/04/04 Javascript
通过正则格式化url查询字符串实现代码
2012/12/28 Javascript
document.createElement()用法
2013/03/13 Javascript
jquery新的绑定事件机制on方法的使用方法
2014/04/15 Javascript
JavaScript中九种常用排序算法
2014/09/02 Javascript
深入理解javascript变量声明
2014/11/20 Javascript
jquery实现超简洁的TAB选项卡效果代码
2015/08/28 Javascript
写给小白的JavaScript引擎指南
2015/12/04 Javascript
jquery实现图片预加载
2015/12/25 Javascript
jQuery实现最简单的切换图效果【可兼容IE6、火狐、谷歌、opera等】
2016/09/04 Javascript
AngularJS Select(选择框)使用详解
2017/01/18 Javascript
ES6新特性五:Set与Map的数据结构实例分析
2017/04/21 Javascript
js封装成插件的步骤方法
2017/09/11 Javascript
jQuery设置下拉框显示与隐藏效果的方法分析
2019/09/15 jQuery
简单了解JavaScript弹窗实现代码
2020/05/07 Javascript
[54:33]2018DOTA2亚洲邀请赛小组赛 A组加赛 Liquid vs Optic
2018/04/03 DOTA
python抓取网页图片并放到指定文件夹
2014/04/24 Python
Python打造出适合自己的定制化Eclipse IDE
2016/03/02 Python
Python算法应用实战之栈详解
2017/02/04 Python
基于Python+Appium实现京东双十一自动领金币功能
2019/10/31 Python
对python中arange()和linspace()的区别说明
2020/05/03 Python
自定义html标记替换html5新增元素
2008/10/17 HTML / CSS
印度尼西亚电子产品购物网站:Kliknklik
2018/06/05 全球购物
英国健康和美容技术产品购物网站:CurrentBody
2019/07/17 全球购物
某IT外企面试题-二分法求方程!看看大家的C++功底
2015/07/04 面试题
大专毕业生自我鉴定
2013/11/21 职场文书
最新党员思想汇报
2014/01/01 职场文书
促销活动总结模板
2014/07/01 职场文书
先进员工事迹材料
2014/12/20 职场文书
个人汇报材料范文
2014/12/30 职场文书