python自动化之使用openpyxl读取和修改Excel文档。

简介: openpyxl是一个比较综合的工具,能够同时读取和修改Excel文档。

openpyxl介绍:

openpyxl是一个比较综合的工具,能够同时读取和修改Excel文档。
openpyxl模块只支持xlsx/xlsm/xltx/xltm格式,不支持xls格式。
openpyxl的官方文档地址在这里:官网文档
安装方式:

打开命令行窗口,执行命令 pip install openpyxl

openpyxl的简单使用入门

使用之前导入模块:

import openpyxl as op

写文件

1、创建一个工作簿,同时创建一个工作表sheet: wb = op.Workbook()
2、创建新的sheet的两种方式:
ws = wb.create_sheet()
在指定位置创建工作表
ws = wb.create_sheet(index=0)
3、设置工作表sheet名字
ws.title = '工作表1'
print(ws.title)
4、上面两步可以使用一句代码实现:创建自定义名字的sheet
ws = wb.create_sheet('工作表2',0)
5、修改sheet表,改变工作表标签颜色,默认为无颜色
ws.sheet_properties.tabColor = "F22F27"
6、激活工作簿,获取index=0的工作表
ws = wb.active
7、在单元格写入数据:
ws['A1'] = 42 在A1单元格写入
ws.cell(row=1, column=2, value=42) 在B1单元格写入
ws.cell(1,3).value= 42 在C1单元格写入
8、新增一行数据:传入数组
ws.append([1, 2, 3, 4])
9、保存工作簿
wb.save('openpyxl.xlsx')


当一个工作表被创建时,其中不包含单元格,只有当单元格被获取时才被创建。
这种方式我们不会创建我们从不会使用的单元格,从而减少了内存消耗;


读文件



def read():
    ''''''
    filename = 'H:/openpyxl.xlsx'
    #打开文件
    wb = op.load_workbook(filename=filename)
    ws = wb.active
    print(ws.max_row)     # 获取工作表最大行
    print(ws.max_column)  # 获取工作表最大列
    print(ws.calculate_dimension())  # 获取工作表全部数据的单元格区域
    
    #获取所有sheet
    for sheet in wb:
        print(sheet.title)
    
    #复制工作表
    ws_1 = wb.copy_worksheet(ws)
    ws_1.title = 'copy'
    print(ws.title)
    #获取所有工作表sheet
    print(wb.sheetnames)
    #根据名字获取sheet
    ws_2 = wb['copy']
    #删除sheet
    wb.remove(ws_1)
    #del wb['copy']
    print(wb.sheetnames)

#read()

def readRange():

    filename = 'H:/openpyxl.xlsx'
    #打开文件
    wb = op.load_workbook(filename=filename)
    ws = wb.active
    
    #获取单个单元格值
    cell_A2 = ws['A2']
    cell_B2 = ws.cell(row=2, column=2)
    print(cell_A2.value, cell_B2.value)
    
    # 通过行/列
    print(ws['A'])        #A列
    print(ws['A:B'])      #A、B列
    print(ws[2])             #第2行
    print(ws[2:5])        #2-5行
    
    # 迭代所有行
    all_by_row = ws.rows 
    # 迭代所有列
    all_by_col =ws.columns
    print(all_by_row,all_by_col)
    #获取多个单元格值
    cell_area = ws['A1':'B3']
    for rows in cell_area:
        for cells in rows:
            print(cells.value)

写入图片

image.png

相关文章
|
9月前
|
安全 JavaScript 开发者
Python 自动化办公神器|一键转换所有文档为 PDF
本文介绍一个自动化批量将 Word、Excel、PPT、TXT、HTML 及图片转换为 PDF 的 Python 脚本。支持多格式识别、错误处理与日志记录,适用于文档归档、报告整理等场景,大幅提升办公效率。仅限 Windows 平台,需安装 Office 及相关依赖。
491 0
|
7月前
|
存储 数据采集 监控
Python定时爬取新闻网站头条:从零到一的自动化实践
在信息爆炸时代,本文教你用Python定时爬取腾讯新闻头条,实现自动化监控。涵盖请求、解析、存储、去重、代理及异常通知,助你构建高效新闻采集系统,适用于金融、电商、媒体等场景。(238字)
1196 2
|
8月前
|
小程序
公众号如何添加附传Word、Excel、Pdf、PPT文档
公众号里添加一些文档给公众号粉丝下载,比如课件PPT、申请表Word文档、岗位需求Excel表、大赛入围/获奖名单等。公众号本身是不支持直接上传文件的,但我们可以通过附件小程序“间接”上传文件。
1265 0
|
8月前
|
数据采集 监控 Shell
无需Python:Shell脚本如何成为你的自动化爬虫引擎?
Shell脚本利用curl/wget发起请求,结合文本处理工具构建轻量级爬虫,支持并行加速、定时任务、增量抓取及分布式部署。通过随机UA、异常重试等优化提升稳定性,适用于日志监控、价格追踪等场景。相比Python,具备启动快、资源占用低的优势,适合嵌入式或老旧服务器环境,复杂任务可结合Python实现混合编程。
|
10月前
|
存储 数据采集 数据可视化
Python自动化分析知网文献:爬取、存储与可视化
Python自动化分析知网文献:爬取、存储与可视化
|
10月前
|
数据采集 存储 监控
Python爬虫自动化:定时监控快手热门话题
Python爬虫自动化:定时监控快手热门话题
|
7月前
|
数据采集 运维 监控
爬虫与自动化技术深度解析:从数据采集到智能运维的完整实战指南
本文系统解析爬虫与自动化核心技术,涵盖HTTP请求、数据解析、分布式架构及反爬策略,结合Scrapy、Selenium等框架实战,助力构建高效、稳定、合规的数据采集系统。
1142 62
爬虫与自动化技术深度解析:从数据采集到智能运维的完整实战指南
|
8月前
|
运维 Linux 网络安全
自动化真能省钱?聊聊运维自动化如何帮企业优化IT成本
自动化真能省钱?聊聊运维自动化如何帮企业优化IT成本
253 4
|
运维 Linux Apache
,自动化运维成为现代IT基础设施的关键部分。Puppet是一款强大的自动化运维工具
【10月更文挑战第7天】随着云计算和容器化技术的发展,自动化运维成为现代IT基础设施的关键部分。Puppet是一款强大的自动化运维工具,通过定义资源状态和关系,确保系统始终处于期望配置状态。本文介绍Puppet的基本概念、安装配置及使用示例,帮助读者快速掌握Puppet,实现高效自动化运维。
438 4

推荐镜像

更多