操作Excel文件建议使用openpyxl 兼容office2016

打开excel文件,获取工作表

import openpyxl
wb=openpyxl.load_workbook('ttt.xlsx') #打开excel文件
print(wb.get_sheet_names()) #获取工作簿所有工作表名 sheet=wb.get_sheet_by_name('Sheet1') #获取工作表
print(sheet.title) sheet02=wb.get_active_sheet() #获取活动的工作表
print(sheet02.title)

操作单元格

print(sheet['A1'].value)  #获取单元格A1值
print(sheet['A1'].column) #获取单元格列值
print(sheet['A1'].row) #获取单元格行号 print(sheet.cell(row=1,column=1).value) #获取单元格A1值,column与row依然可用 for i in range(1,4,1):
print(sheet.cell(row=i,column=1).value) #更加方便实用 print(sheet.max_column) #获取最大列数
print(sheet.max_row) #获取最大行数

读取excel文件

#读取excel文件 sheetname可为空
def readwb(wbname,sheetname):
wb=openpyxl.load_workbook(filename=wbname,read_only=True)
if (sheetname==""):
ws=wb.active
else:
ws=wb[sheetname]
i=1
fields=[]
data=[]
for row in ws.rows:
list=[]
for cell in row:
aa=str(cell.value)
if (aa==""):
aa=""
list.append(aa)
if(i<5):
pass
elif (i==5):
fields=list
else:
data.append(list)
i=i+1
data.sort(key=lambda x:x[0])
print (wbname +"-"+sheetname+"- 已成功读取")
return fields,data

新建excel,并写入数据

#新建excel
def creatwb(wbname):
wb=openpyxl.Workbook()
wb.save(filename=wbname)
print ("新建Excel:"+wbname+"成功") # 写入excel文件中 date 数据, fields 表头
def savetoexcel(data,fields,sheetname,wbname):
print("写入excel:")
wb=openpyxl.load_workbook(filename=wbname) sheet=wb.active
sheet.title=sheetname field=1
for field in range(1,len(fields)+1): # 写入表头
_=sheet.cell(row=1,column=field,value=str(fields[field-1])) row1=1
col1=0
for row1 in range(2,len(data)+2): # 写入数据
for col1 in range(1,len(data[row1-2])+1):
_=sheet.cell(row=row1,column=col1,value=str(data[row1-2][col1-1])) wb.save(filename=wbname)
print("保存成功")

Python3 操作Excel--openpyxl的更多相关文章

  1. python3操作Excel openpyxl模块的使用

    python 与excel 安装模块 本例子中使用的模块为: openpyxl 版本为2.4.8 安装方法请参看以前发表的文章(Python 的pip模块安装方法) Python处理Excel表格 使 ...

  2. 【Python数据分析】Python3操作Excel(二) 一些问题的解决与优化

    继上一篇[Python数据分析]Python3操作Excel-以豆瓣图书Top250为例 对豆瓣图书Top250进行爬取以后,鉴于还有一些问题没有解决,所以进行了进一步的交流讨论,这期间得到了一只尼玛 ...

  3. Python笔记(十四):操作excel openpyxl模块

    (一)  常遇到的情况 就我自己来说,常遇到的情况可能就下面几种: 读取excel整个sheet页的数据. 读取指定行.列的数据 往一个空白的excel文档写数据 往一个已经有数据的excel文档追加 ...

  4. python操作excel (openpyxl)

    最近看到好几次群里有人问xlwt.wlrd的问题,怎么说呢,如果是office2007刚出来,大家用xlsx文件用不习惯,还可以理解,这都10年过去了喂,就算没有进化到office2016,还在用of ...

  5. python操作excel——openpyxl

    一.概述 python操作excel各个库对比:https://www.cnblogs.com/paul-liang/p/9187503.html 官方文档:https://openpyxl.read ...

  6. python3 操作excel表

    python操作excel主要用到xlrd和xlwt这两个库,即xlrd是读excel,xlwt是写excel的库可从这里下载https://pypi.python.org/pypi.下面分别记录py ...

  7. python 操作excel openpyxl

    1 安装 pip install openpyxl 如果装不上,请指定安装源来安装 pip install -i https://pypi.douban.com/simple openpyxl 如果e ...

  8. Python3 操作Excel

    首先说明一下 在处理大文件时,openpyxl 的性能不如 xlrd,xlwt等.所以可以读取的时候使用xlrd,写的时候用openpyxl. 今天遇到一个使用场景:excel存放的是一条条用例,包含 ...

  9. python3操作Excel

    1.安装openpyxl模块: 在cmd命令窗执行命令 pip install openpyxl    安装openpyxl模块 from openpyxl import load_workbook ...

  10. 转 Python - openpyxl 读写操作Excel

    Python - openpyxl 读写操作Excel   openpyxl特点   openpyxl(可读写excel表)专门处理Excel2007及以上版本产生的xlsx文件,xls和xlsx之间 ...

随机推荐

  1. 证明中序遍历O(n)

    算法导论12.1 什么是二叉搜索树 二叉搜索树应满足的性质: 设x是二叉搜索树中的一个结点.如果y是x左子树中的一个结点,那么y.key <= x.key.如果y是右子树中的一个结点,那么y.k ...

  2. .NET Framework和C#版本历史概览

    发布日期 .Net版本 C#版本 CLR版本 开发工具 功能介绍 2002 1.0 1.0 初始版本 Visual Studio .Net 初始版本 .NET框架结构,详见: 2003 1.1     ...

  3. Ubuntu下安装Pyqt4

    确保系统中安装有python之后,在终端输入: sudo apt-get install libxext6 libxext-dev libqt4-dev libqt4-gui libqt4-sql q ...

  4. java加载配置文件的三种方式

    比如我们要加载db.properties文件 如图: 比如我们要加载source目录下的db.properties文件.就有以下几种方式 第一种是文件io流: public static void l ...

  5. JS实现等比例缩放图片

    JS实现等比例缩放图片 2014-01-19 21:57 by 龙恩0707, 40 阅读, 0 评论, 收藏, 编辑 JS实现等比例缩放图片 有时候我们前端页面只有500×500像素的宽和高的布局, ...

  6. 2013集训.DAY1.A

    发现自己漏整理了一套,现在附上T1:primenumT2:sendroseT4:warfare除了第一题以外,其余的两题由于当时太弱什么都不会,所以用来学习....T2 SPFA T4 最大生成树

  7. Google C++测试框架系列:入门

    Google C++测试框架系列:入门 原始链接:V1_6_Primer 注 GTest或者Google Test: Google的C++测试框架. Test Fixtures: 这个词实在找不到对应 ...

  8. EF Power Tools 参数错误 HRESULT:0x80070057 (E_INVALIDARG))

    数据库名称使用数字开头,使用EF Power Tools生成映射时,会提示:“参数错误. (Exception from HRESULT: 0x80070057 (E_INVALIDARG))”. 解 ...

  9. Silverlight类百度文库在线文档阅读器(转)

    百度文库阅读器是基于Flash的,用Silverlight其实也可以做. 我实现的在线阅读器可以应用于内网文档发布,在线阅览审批等.没有过多的堆积功能,专注于核心功能.主要有以下特性: 1. 基于XP ...

  10. IOS学习之路二十二(UIAlertView获得文本框内容及添加北京图片)

    今天写项目要用到警告框带输入框的,于是就自己做了个小demo. 效果图大体如下: 下面简单介绍一下UIAlertView alertViewStyle属性有以下三种选项:  UIAlertViewSt ...