首页 > 编程语言 >python接口自动化系列 - openpyxl基本使用03

python接口自动化系列 - openpyxl基本使用03

时间:2023-01-04 21:37:22浏览次数:42  
标签:03 sheet openpyxl python value workbook print 读取

一、openpyxl简单介绍

  • 一个Python库,用于读取/写入Excel 2010  xlsx 、xlsm 、xltx 、xltm 文件
  • 不能操作 xls 文件
  • Workbook:excel工作表
  • Sheet:工作表中的一张表
  • Cell:其中的一个单元格
  • 简单步骤:打开Workbook,选中Sheet,操作Cell

二、读取xlsx

import openpyxl

path = './case/imooc.xlsx'
# 读取excel文件
workbook = openpyxl.load_workbook(path)

#方法一 读取所有sheet-已停止使用,使用会有警告
sheet = workbook.get_sheet_names()
# 获取某个sheet
sheet = workbook[sheet[0]]
# 获取某个cell的值
cell_val = sheet.cell(row=2, column=2).value
print(cell_val)

#方法二
sheetname = workbook.sheetnames[0]
print(sheetname)

print("A列:", sheet["A"])  # 读取A列
print("1行:", sheet["1"])  # 读取第1行
print("C4格的值:", sheet["C4"].value)  # 读取C4格的值
# 最大/最小行列数获取的是表中的数据区域
print("最大行数为:", sheet.max_row)  # 最大行数
print("最大列数为::", sheet.max_column)  # 最大列数
print("最小行数为:", sheet.min_row)  # 最小行数
print("最小列数为:", sheet.min_column)  # 最大列数
print("第一行第一列的单元格值为:",sheet.cell(row=1, column=1).value)  # 获取第一行第一列单元格的值
print("\n")
print("表中C列中所有值为:")
for i in sheet["C"]:
    print(i.value, end=" ")  # 读取C列中的所有值

print("\n")

print("表中2行中所有值为:")
for j in sheet["2"]:
    print(j.value)

返回结果:

注意:get_sheet_by_name()方法已经未使用了,继续使用会出现警告:DeprecationWarning: Call to deprecated function get_sheet_by_name (Use wb[sheetname]). 

三、写入xslx  

from openpyxl import workbook    #导入库
wb=workbook.Workbook()          #创建一个新工作表
sheet=wb.active                 #找到活动的sheet页
sheet.title='new sheet'         #空的excel表默认的sheet页就叫Sheet,如果想改名字,可以直接给title属性赋值
'''
这个属性是可读可写的。当然,这个只针对当前活动页,别的页的话,可以用create_sheet和remove_sheet进行添加和删除。
往sheet页里面写内容就比较简单了,跟读一样.
'''
sheet['C3']= 'Hello world!'
for i in range(10):
    sheet["A%d" % (i+1)].value=i+1
sheet["E1"].value= "=SUM(A:A)"   #我们还可以进行花式操作,比如写写公式:
wb.save('./case/new_excel.xlsx')  #最后记得保存

 执行结果:

 针对于已有的工作表进行写入:

from openpyxl import load_workbook
fp=load_workbook("./case/new_excel.xlsx")
sheet = fp["new sheet"]
sheet['c1'] = '新写入的内容'

fp.save("./case/new_excel.xlsx")

返回结果:  

 

 

 

标签:03,sheet,openpyxl,python,value,workbook,print,读取
From: https://www.cnblogs.com/xfbk/p/17024988.html

相关文章

  • python接口自动化系列 - requests库的基础使用01
    一、安装利用pip安装:$pipinstallrequestsrequests方法法描述delete(url, args)发送DELETE请求到指定urlget(url, params,args)发送GET请求......
  • python爬取电影
    我们现在很多视频网站的电影都是由很多ts文件片段组成的,要想下载电影,就需要把这些ts文件片段全部下载下来,然后合成一部完整的电影这个程序配置好以下三个地方就可以下......
  • Python开发一个csv比较功能相关知识点汇总及demo
    Python2.7csv.reader(csvfile, dialect='excel', **fmtparams)的一个坑:csvfile被csv.reader生成的iterator,在遍历每二次时,内容为空iteratorAnobjectrepresentingastr......
  • SICP:符号求导、集合表示和Huffman树(Python实现)
    绪论到目前为止,我们已经使用过的所有复合数据,最终都是从数值出发构造起来的(比如我们在上一篇博客《SICP2.2:层次性数据和闭包性质(Python实现)》所介绍的链表和树就基于......
  • python模块(module)
    目录模块化(module)程序设计理念模块和包概念的进化史标准库模块(standardlibrary)为什么需要模块化编程模块化编程的流模块的API和功能描述要点模块的创建和测试代码模......
  • Python:numpy模块最详细的教程
    一、numpy简介numpy官方文档:https://docs.scipy.org/doc/numpy/reference/?v=20190307135750numpy是Python的一种开源的数值计算扩展库。这种库可用来存储和处理大型nump......
  • python3实现字符串的全排列的方法(无重复字符)两种解决方法
    抛出问题求任意一个字符串的全排列组合,例如a='123',输出123,132,213,231,312,321。(暂时假定字符串没有重复)解决方案目前有两种解决的方法方法一:defstr_sort(s=''):if......
  • python中可以处理word文档的模块:docx模块
    一.docx模块Python可以利用python-docx模块处理word文档,处理方式是面向对象的。也就是说python-docx模块会把word文档,文档中的段落、文本、字体等都看做对象,对对象进行处......
  • 5分钟快速掌握 Python 定时任务框架
    APScheduler简介在实际开发中我们经常会碰上一些重复性或周期性的任务,比如像每天定时爬取某个网站的数据、一定周期定时运行代码训练模型等,类似这类的任务通常需要我们手......
  • Python网络编程之TCP 客户端程序开发
    一、开发TCP客户端程序开发步骤回顾创建客户端套接字对象和服务端套接字建立连接发送数据接收数据关闭客户端套接字二、socket类的介绍导入socket模块 importsocket......