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 socket C/S结构的聊天室应用实现
Nov 30 Python
在Django中同时使用多个配置文件的方法
Jul 22 Python
详解Python中映射类型的内建函数和工厂函数
Aug 19 Python
python3.5实现socket通讯示例(TCP)
Feb 07 Python
Python堆排序原理与实现方法详解
May 11 Python
利用Python实现原创工具的Logo与Help
Dec 03 Python
python学生管理系统开发
Jan 30 Python
django前端页面下拉选择框默认值设置方式
Aug 09 Python
python request 模块详细介绍
Nov 10 Python
python 实现socket服务端并发的四种方式
Dec 14 Python
Python爬虫定时计划任务的几种常见方法(推荐)
Jan 15 Python
Python下opencv库的安装过程及问题汇总
Jun 11 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
php smarty模版引擎中的缓存应用
2009/12/02 PHP
php实现往pdf中加数字签名操作示例【附源码下载】
2018/08/07 PHP
Laravel5框架自定义错误页面配置操作示例
2019/04/17 PHP
tp5(thinkPHP5框架)使用DB实现批量删除功能示例
2019/05/28 PHP
PHP实现抽奖功能实例代码
2020/06/30 PHP
js继承 Base类的源码解析
2008/12/30 Javascript
网页中的图片的处理方法与代码
2009/11/26 Javascript
JavaScript模板入门介绍
2012/09/26 Javascript
jQuery.fn和jQuery.prototype区别介绍
2013/10/05 Javascript
使用NodeJs 开发微信公众号(三)微信事件交互实例
2016/03/02 NodeJs
JavaScript中的Array 对象(数组对象)
2016/06/02 Javascript
JavaScript利用正则表达式替换字符串中的内容
2016/12/12 Javascript
ES6中Proxy与Reflect实现重载(overload)的方法
2017/03/30 Javascript
关于Node.js的events.EventEmitter用法介绍
2017/04/01 Javascript
bootstrap警告框示例代码分享
2017/05/17 Javascript
vue router2.0二级路由的简单使用
2017/07/05 Javascript
使用vuex较为优雅的实现一个购物车功能的示例代码
2019/12/09 Javascript
jQuery实现高度灵活的表单验证功能示例【无UI】
2020/04/30 jQuery
进一步理解Python中的函数编程
2015/04/13 Python
讲解Python中的递归函数
2015/04/27 Python
python使用socket进行简单网络连接的方法
2015/04/29 Python
Python进阶学习之特殊方法实例详析
2017/12/01 Python
Python多图片合并PDF的方法
2019/01/03 Python
Python设计模式之外观模式实例详解
2019/01/17 Python
Python递归实现打印多重列表代码
2020/02/27 Python
BeautifulSoup中find和find_all的使用详解
2020/12/07 Python
python绘图pyecharts+pandas的使用详解
2020/12/13 Python
HTML5获取当前地理位置并在百度地图上展示的实例
2020/07/10 HTML / CSS
SIXPAD智能健身仪英国官网:革命性的训练装备品牌
2018/09/27 全球购物
英语感恩演讲稿
2014/01/14 职场文书
大学生英语演讲稿
2014/04/24 职场文书
生活小常识广播稿
2015/08/19 职场文书
5种 JavaScript 方式实现数组扁平化
2021/10/05 Javascript
MYSQL如何查看进程和kill进程
2022/03/13 MySQL
MySQL中rank() over、dense_rank() over、row_number() over用法介绍
2022/03/23 MySQL
Spring Data JPA框架自定义Repository接口
2022/04/28 Java/Android