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中下划线的使用方法
Mar 27 Python
Python中强大的命令行库click入门教程
Dec 26 Python
利用python编写一个图片主色转换的脚本
Dec 07 Python
微信跳一跳辅助python代码实现
Jan 05 Python
浅谈python中np.array的shape( ,)与( ,1)的区别
Jun 04 Python
python实现AES加密解密
Mar 28 Python
Python 安装第三方库 pip install 安装慢安装不上的解决办法
Jun 18 Python
使用python画社交网络图实例代码
Jul 10 Python
详解Python中正则匹配TAB及空格的小技巧
Jul 26 Python
PyPDF2读取PDF文件内容保存到本地TXT实例
May 12 Python
python filecmp.dircmp实现递归比对两个目录的方法
May 22 Python
Python MNIST手写体识别详解与试练
Nov 07 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
Laravel中基于Artisan View扩展包创建及删除应用视图文件的方法
2016/10/08 PHP
详解Laravel设置多态关系模型别名的方式
2019/10/17 PHP
JScript中使用ADODB.Stream判断文件编码的代码
2008/06/09 Javascript
JS 仿腾讯发表微博的效果代码
2013/12/25 Javascript
IE6已终止操作问题的2种情况及解决
2014/04/23 Javascript
Javascript中实现trim()函数的两种方法
2015/02/04 Javascript
React.js入门学习第一篇
2016/03/30 Javascript
JS组件Bootstrap实现下拉菜单效果代码
2016/04/26 Javascript
JavaScript中解决多浏览器兼容性23个问题的快速解决方法
2016/05/19 Javascript
vue的Virtual Dom实现snabbdom解密
2017/05/03 Javascript
js实现网页的两个input标签内的数值加减(示例代码)
2017/08/15 Javascript
vue2.0.js的多级联动选择器实现方法
2018/02/09 Javascript
Js中使用正则表达式验证输入是否有特殊字符
2018/09/07 Javascript
JavaScript循环遍历你会用哪些之小结篇
2018/09/28 Javascript
微信小程序日历组件使用方法详解
2018/12/29 Javascript
继承行为在 ES5 与 ES6 中的区别详解
2019/12/24 Javascript
小程序跳转到的H5页面再跳转回跳小程序的方法
2020/03/06 Javascript
vue实现图片上传功能
2020/05/28 Javascript
原生js实现五子棋游戏
2020/05/28 Javascript
vue 动态设置img的src地址无效,npm run build 后找不到文件的解决
2020/07/26 Javascript
微信小程序实现列表左右滑动
2020/11/19 Javascript
windows下python模拟鼠标点击和键盘输示例
2014/02/28 Python
pandas删除指定行详解
2019/04/04 Python
浅谈Python中os模块及shutil模块的常规操作
2020/04/03 Python
使用css创建三角形 使用CSS3创建3d四面体原理及代码(html5实践)
2013/01/06 HTML / CSS
H5页面适配iPhoneX(就是那么简单)
2019/12/02 HTML / CSS
印度婴儿用品在线商店:Firstcry.com
2016/12/05 全球购物
高中生自我评语大全
2014/01/19 职场文书
党的群众路线教育实践活动宣传方案
2014/02/23 职场文书
经销商年会策划方案
2014/05/29 职场文书
计划生育标语
2014/06/23 职场文书
大学生感恩父母演讲稿
2014/08/28 职场文书
2014小学数学教研组工作总结
2014/12/06 职场文书
2015年大学班长个人工作总结
2015/04/24 职场文书
《全神贯注》教学反思
2016/02/22 职场文书
分享mysql的current_timestamp小坑及解决
2021/11/27 MySQL