Python操作Excel之xlsx文件


Posted in Python onMarch 24, 2017

前言

之前处理excel的读写时用的是xlrd/xlwt,但是这两个库有个缺点就是只对xls的格式处理的比较好,对以xlsx结尾的格式就不行了。由于现在大家使用的都是最新版本的office,excel的格式都是xlsx,因此此时再继续用xlrd/xlwt处理就不合适了,庆幸的是对于xlsx文件的读写,我们还可以使用openpyxl来操作。

我对excel并不熟悉,平时也不怎么用,所以对excel的处理很简单,只是简单的读写,这里演示的也是简单的读写操作,具体的高级功能,可以参考文后的链接地址。

一:写一个excel文件如下

from openpyxl import Workbook
 from openpyxl.utils import get_column_letter
 
 # 在内存中创建一个workbook对象,而且会至少创建一个 worksheet
 wb = Workbook()
 
 #获取当前活跃的worksheet,默认就是第一个worksheet
 ws = wb.active
 
 #设置单元格的值,A1等于6(测试可知openpyxl的行和列编号从1开始计算),B1等于7
 ws.cell(row=1, column=1).value = 6
 ws.cell("B1").value = 7
 
 #从第2行开始,写入9行10列数据,值为对应的列序号A、B、C、D...
 for row in range(2,11):
  for col in range (1,11):
   ws.cell(row=row, column=col).value = get_column_letter(col)
 
 #可以使用append插入一行数据
 ws.append(["我","你","她"])
 
 #保存
 wb.save(filename="/Users/budong/Desktop/a.xlsx")

二:读刚刚写入的excel内容如下

from openpyxl import load_workbook
 
 #打开一个workbook
 wb = load_workbook(filename="/Users/budong/Desktop/a.xlsx")
 
 #获取当前活跃的worksheet,默认就是第一个worksheet
 #ws = wb.active
 
 #当然也可以使用下面的方法
 
 #获取所有表格(worksheet)的名字
 sheets = wb.get_sheet_names()
 #第一个表格的名称
 sheet_first = sheets[0]
 #获取特定的worksheet
 ws = wb.get_sheet_by_name(sheet_first)

 #获取表格所有行和列,两者都是可迭代的
 rows = ws.rows
 columns = ws.columns
 
 #迭代所有的行
 for row in rows:
  line = [col.value for col in row]
  print line
 
 #通过坐标读取值
 print ws.cell('A1').value # A表示列,1表示行
 print ws.cell(row=1, column=1).value

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
python字符串连接的N种方式总结
Sep 17 Python
python实现在sqlite动态创建表的方法
May 08 Python
Python使用pygame模块编写俄罗斯方块游戏的代码实例
Dec 08 Python
如何在django里上传csv文件并进行入库处理的方法
Jan 02 Python
Python匿名函数及应用示例
Apr 09 Python
使用APScheduler3.0.1 实现定时任务的方法
Jul 22 Python
解决django服务器重启端口被占用的问题
Jul 26 Python
python使用 cx_Oracle 模块进行查询操作示例
Nov 28 Python
Matplotlib.pyplot 三维绘图的实现示例
Jul 28 Python
Pycharm及python安装详细教程(图解)
Jul 31 Python
PyQt实现计数器的方法示例
Jan 18 Python
Python list列表删除元素的4种方法
Nov 01 Python
解决uWSGI的编码问题详解
Mar 24 #Python
Python中动态创建类实例的方法
Mar 24 #Python
python3中set(集合)的语法总结分享
Mar 24 #Python
Python Socket编程详细介绍
Mar 23 #Python
python3中int(整型)的使用教程
Mar 23 #Python
python利用Guetzli批量压缩图片
Mar 23 #Python
python3中str(字符串)的使用教程
Mar 23 #Python
You might like
PHP下通过系统信号量加锁方式获取递增序列ID
2009/09/25 PHP
PHP连接SQLServer2005的方法
2015/01/27 PHP
PHP中Session可能会引起并发问题
2015/06/26 PHP
PHP开发中常用的十个代码样例
2016/02/02 PHP
浅谈Laravel核心解读之Console内核
2018/12/02 PHP
JavaScript实现Sleep函数的代码
2007/03/04 Javascript
MooTools 1.2中的Drag.Move来实现拖放
2009/09/15 Javascript
Jquery Ajax学习实例3 向WebService发出请求,调用方法返回数据
2010/03/16 Javascript
jquery动态加载图片数据练习代码
2011/08/04 Javascript
script标签属性type与language使用选择
2012/12/02 Javascript
Javascript中valueOf与toString区别浅析
2013/03/19 Javascript
jQuery把表单元素变为json对象
2013/11/06 Javascript
JavaScript获取两个数组交集的方法
2015/06/09 Javascript
JavaScript实现定时隐藏与显示图片的方法
2015/08/06 Javascript
jQuery1.9.1源码分析系列(十六)ajax之ajax框架
2015/12/04 Javascript
JavaScript模块化开发之SeaJS
2015/12/13 Javascript
javascript学习指南之回调问题
2016/04/23 Javascript
vue如何引用其他组件(css和js)
2017/04/13 Javascript
React BootStrap用户体验框架快速上手
2018/03/06 Javascript
vue.js编译时给生成的文件增加版本号
2018/09/17 Javascript
Windows系统下安装Python的SSH模块教程
2015/02/05 Python
python 调用HBase的简单实例
2016/12/18 Python
基于python 字符编码的理解
2017/09/02 Python
django框架自定义模板标签(template tag)操作示例
2019/06/24 Python
pytorch:实现简单的GAN示例(MNIST数据集)
2020/01/10 Python
Python趣味实例,实现一个简单的抽奖刮刮卡
2020/07/18 Python
意大利男装网店:Vrients
2019/05/02 全球购物
惠而浦美国官网:Whirlpool.com
2021/01/19 全球购物
顶撞领导检讨书
2014/01/29 职场文书
母婴店促销方案
2014/03/05 职场文书
群众路线对照检查材料思想汇报怎么写
2014/09/18 职场文书
毕业论文答辩开场白和答辩技巧
2015/05/27 职场文书
大学生心理健康教育心得体会
2016/01/12 职场文书
投资入股协议书
2016/03/22 职场文书
《文化苦旅》读后感:阅读,让人诗意地栖居在大地上
2019/12/24 职场文书
Win11如何启用启动修复 ? Win11执行启动修复的三种方法
2022/04/08 数码科技