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 17 Python
Python的Django框架中从url中捕捉文本的方法
Jul 20 Python
django实现前后台交互实例
Aug 07 Python
详解python中executemany和序列的使用方法
Aug 12 Python
Python实现自定义函数的5种常见形式分析
Jun 16 Python
Python神奇的内置函数locals的实例讲解
Feb 22 Python
python如何将两个txt文件内容合并
Oct 18 Python
基于Python实现签到脚本过程解析
Oct 25 Python
使用pandas实现连续数据的离散化处理方式(分箱操作)
Nov 22 Python
详解python 支持向量机(SVM)算法
Sep 18 Python
Python中for后接else的语法使用
May 18 Python
用PYTHON去计算88键钢琴的琴键频率和音高
Apr 10 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
PHPMYADMIN导入数据最大为2M的解决方法
2012/04/23 PHP
PHP_SELF,SCRIPT_NAME,REQUEST_URI区别
2014/12/24 PHP
PHP数学运算函数大汇总(经典值得收藏)
2016/04/01 PHP
js 浮动层菜单收藏
2009/01/16 Javascript
jQuery 无限级菜单的简单实例
2014/02/21 Javascript
js实现a标签超链接提交form表单的方法
2015/06/24 Javascript
Vue.js实战之组件之间的数据传递
2017/04/01 Javascript
基于JavaScript实现飘落星星特效
2017/08/10 Javascript
vue-router的使用方法及含参数的配置方法
2018/11/13 Javascript
JavaScript对JSON数组简单排序操作示例
2019/01/31 Javascript
laypage+SpringMVC实现后端分页
2019/07/27 Javascript
vue实现鼠标经过动画
2019/10/16 Javascript
[03:42]2016国际邀请赛中国区预选赛首日现场玩家采访
2016/06/26 DOTA
Python动态加载模块的3种方法
2014/11/22 Python
Python解析最简单的验证码
2016/01/07 Python
你所不知道的Python奇技淫巧13招【实用】
2016/12/14 Python
python正则表达式及使用正则表达式的例子
2018/01/22 Python
python切片及sys.argv[]用法详解
2018/05/25 Python
Python脚本完成post接口测试的实例
2018/12/17 Python
python操作cfg配置文件方式
2019/12/22 Python
python查找特定名称文件并按序号、文件名分行打印输出的方法
2020/04/24 Python
pyCharm 实现关闭代码检查
2020/06/09 Python
Python2与Python3关于字符串编码处理的差别总结
2020/09/07 Python
在vscode中启动conda虚拟环境的思路详解
2020/12/25 Python
JACK & JONES瑞典官方网站:杰克琼斯欧式风格男装
2017/12/23 全球购物
公司活动总结怎么写
2014/06/25 职场文书
优秀大专毕业生求职信
2014/08/04 职场文书
干部对照检查材料范文
2014/08/26 职场文书
党支部党的群众路线对照检查材料
2014/09/24 职场文书
玩手机检讨书1000字
2014/10/20 职场文书
在人间读书笔记
2015/06/30 职场文书
安全生产感想
2015/08/07 职场文书
php TP5框架生成二维码链接
2021/04/01 PHP
redis数据结构之压缩列表
2022/03/21 Redis
Win11无法访问设备和打印机 如何解决页面空白
2022/04/09 数码科技
Python matplotlib安装以及实现简单曲线的绘制
2022/04/26 Python