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

相关文章
|
7月前
|
XML 数据格式 Python
从手动编辑到代码生成:Python 助你高效创建 Word 文档
本文介绍如何用Python实现Word文档自动化生成,结合python-docx、openpyxl和matplotlib库,高效完成报告撰写、数据插入与图表生成,大幅提升办公效率,降低格式错误,实现数据驱动的文档管理。
1050 2
|
9月前
|
安全 JavaScript 开发者
Python 自动化办公神器|一键转换所有文档为 PDF
本文介绍一个自动化批量将 Word、Excel、PPT、TXT、HTML 及图片转换为 PDF 的 Python 脚本。支持多格式识别、错误处理与日志记录,适用于文档归档、报告整理等场景,大幅提升办公效率。仅限 Windows 平台,需安装 Office 及相关依赖。
516 0
|
7月前
|
人工智能 Java Linux
Python高效实现Excel转PDF:无Office依赖的轻量化方案
本文介绍无Office依赖的Python方案,利用Spire.XLS、python-office、Aspose.Cells等库实现Excel与PDF高效互转。支持跨平台部署、批量处理、格式精准控制,适用于服务器环境及自动化办公场景,提升转换效率与系统稳定性。
817 7
|
7月前
|
机器学习/深度学习 监控 数据挖掘
Python 高效清理 Excel 空白行列:从原理到实战
本文介绍如何使用Python的openpyxl库自动清理Excel中的空白行列。通过代码实现高效识别并删除无数据的行与列,解决文件臃肿、读取错误等问题,提升数据处理效率与准确性,适用于各类批量Excel清理任务。
699 0
|
10月前
|
开发工具 Python
使用Python和OpenAPI将云上的安全组规则填写入Excel
本文介绍如何通过Python脚本自动化获取阿里云安全组及其规则信息,并将结果导出为Excel表格。相比CLI命令行方式,Python实现更高效、便捷,适用于需要批量处理和交付的场景。
使用Python和OpenAPI将云上的安全组规则填写入Excel
|
10月前
|
Python
Python 办公实战:用 python-docx 自动生成 Word 文档
本文详解如何使用 python-docx 库实现 Word 文档自动化生成,涵盖环境搭建、文档创建、格式设置、表格与图片处理、模板填充、批量生成及性能优化等实战技巧,助你高效完成办公场景中的文档自动化任务。
2414 1
|
Python
自动化微信朋友圈:Python脚本实现自动发布动态
本文介绍如何使用Python脚本自动化发布微信朋友圈动态,节省手动输入的时间。主要依赖`pyautogui`、`time`、`pyperclip`等库,通过模拟鼠标和键盘操作实现自动发布。代码涵盖打开微信、定位朋友圈、准备输入框、模拟打字等功能。虽然该方法能提高效率,但需注意可能违反微信使用条款,存在风险。定期更新脚本以适应微信界面变化也很重要。
1517 61
自动化微信朋友圈:Python脚本实现自动发布动态
|
机器学习/深度学习 数据采集 数据可视化
Python数据分析,别再死磕Excel了!
Python数据分析,别再死磕Excel了!
488 2
|
数据可视化 数据挖掘 大数据
1.1 学习Python操作Excel的必要性
学习Python操作Excel在当今数据驱动的商业环境中至关重要。Python能处理大规模数据集,突破Excel行数限制;提供丰富的库实现复杂数据分析和自动化任务,显著提高效率。掌握这项技能不仅能提升个人能力,还能为企业带来价值,减少人为错误,提高决策效率。推荐从基础语法、Excel操作库开始学习,逐步进阶到数据可视化和自动化报表系统。通过实际项目巩固知识,关注新技术,为职业发展奠定坚实基础。

推荐镜像

更多