博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
openpyxl的简单使用
阅读量:6543 次
发布时间:2019-06-24

本文共 1326 字,大约阅读时间需要 4 分钟。

openpyxl

  操作excel的库,只能操作xlxs 文件, xlrd/xlwt这两个库能兼容xls(2003版)

安装

pip install openpyxl 如果excel里面有图片,需要安装图片处理模块 pip install pillow

excel的写入

  创建一个工作簿并保存

from openpyxl import Workbookwb = Workbook()ws1 = wb.create_sheet("Mysheet") #默认最后一个 ws2 = wb.create_sheet("Mysheet", index=0) #第一个(工作簿位置) # 保存 wb.save('sb.xlsx')

  修改工作簿的名称

ws1.title = "New Title"

  获取所有工作簿的名称

print(wb.sheetnames)

  获取其中一个工作簿名称

for sheet in wb:    print(sheet)wb["New Title"] #直接获取名称为New Title的工作薄

  写数据

ws['A4']=4 #这将返回A4处的单元格,如果尚不存在,则创建一个单元格。值可以直接分配ws.cell(row=4, column=2, value=10) # 也可以通过cell来进行写入,通过行数和列数来找到单元格所在的位置,通过value来赋值

  append函数

row = [1 ,2, 3, 4, 5]sheet.append(row)

excel的读取

from openpyxl import load_workbook  #导入模块wb = load_workbook(filename = 'balances.xlsx') #打开文件,默认可读写,若有需要可以指定write_only和read_only为True sheet = wb['test2'] #找到工作表 print(sheet['B4'].value) #输出内容 # B9处写入平均值 sheet['B9'] = '=AVERAGE(B2:B8)' ps:在实例化wb对象时,添加参数data_only=True,返回的“B9”就是数字(但是需要将生成的excel手动保存一次)

获取最大行,最大列

print(sheet.max_row)print(sheet.max_column)

获取行和列

sheet.rows为生成器, 里面是每一行的数据,每一行又由一个tuple包裹。sheet.columns类似,不过里面是每个tuple是每一列的单元格。# 因为按行,所以返回A1, B1, C1这样的顺序for row in sheet.rows: for cell in row: print(cell.value) # A1, A2, A3这样的顺序 for column in sheet.columns: for cell in column: print(cell.value)

 

转载于:https://www.cnblogs.com/zhangqing979797/p/10420619.html

你可能感兴趣的文章
观察者模式(转)
查看>>
Hello world,Hello 2014,Bye 2013
查看>>
vue2.0--请求数据
查看>>
ios调试技巧
查看>>
使用mini-define实现前端代码的模块化管理
查看>>
pandas Dataframe 取某行
查看>>
BZOJ 2599: [IOI2011]Race 点分治
查看>>
接口抽象类区别
查看>>
queue 队列
查看>>
前端之JavaScript--基础
查看>>
TCP/IP TIME_WAIT状态原理
查看>>
统计数中二进制表达式中1的个数
查看>>
陶哲轩实分析 定义7.11(有限级数) 注
查看>>
20145222黄亚奇《网络对抗》信息收集和漏洞扫描技术
查看>>
Windows API 第二篇 SHGetSpecialFolderPath
查看>>
关于成员变量和局部变量是否都会被默认初始化的问题
查看>>
安卓中实现界面数据懒加载
查看>>
linux命令之ls命令的简明讲解
查看>>
django基础知识~ RBAC权限周边初探
查看>>
Integer ,==,int 的使用
查看>>