Python操作Excel神器openpyxl使用教程(超详细!)

下面将为你详细讲解关于“Python操作Excel神器openpyxl使用教程(超详细!)”的完整实例教程。

Python操作Excel神器openpyxl使用教程(超详细!)

介绍

有时候我们需要将Python程序生成的数据保存到Excel表格中,或者将Excel表格中的数据读取出来。这就需要用到Python库openpyxl。

openpyxl是一个用于读写Excel2007及以上版本文件(xlsx/xlsm/xltx/xltm)的Python库,能够读取和写入Excel文件,支持分块加载,对大型Excel文件性能也很好。

安装

可以通过pip安装openpyxl:pip install openpyxl

创建Excel文件

使用openpyxl创建Excel文件非常简单,可以参考下面的示例代码:

from openpyxl import Workbook

# 创建Workbook对象
wb = Workbook()

# 获取当前激活的sheet
ws = wb.active

# 设置sheet名称
ws.title = "My Sheet"

# 写入数据
ws["A1"] = "学号"
ws["B1"] = "姓名"
ws["C1"] = "成绩"
ws["A2"] = "001"
ws["B2"] = "张三"
ws["C2"] = 89.5

# 保存文件
wb.save("my_excel.xlsx")

在这个示例中,首先创建了一个Workbook对象,表示一个Excel文件,然后获取当前激活的sheet,并将其命名为"My Sheet"。接着在sheet中写入了表头和一条数据,并将文件保存到当前目录下的"my_excel.xlsx"文件中。

读取Excel文件

读取Excel文件也非常简单,可以参考下面的示例代码:

from openpyxl import load_workbook

# 加载Excel文件
wb = load_workbook("my_excel.xlsx")

# 获取所有sheet名称
sheet_names = wb.sheetnames
print("所有sheet名称:", sheet_names)

# 获取第一个sheet的名称
first_sheet_name = sheet_names[0]
print("第一个sheet名称:", first_sheet_name)

# 通过sheet名称获取sheet对象
ws = wb[first_sheet_name]

# 获取总行数和总列数
max_row = ws.max_row
max_col = ws.max_column
print("总行数:", max_row)
print("总列数:", max_col)

# 读取数据
for row in range(1, max_row + 1):
    for col in range(1, max_col + 1):
        cell_value = ws.cell(row=row, column=col).value
        print(cell_value, end='\t')
    print()

在这个示例中,首先使用load_workbook函数加载了之前保存的Excel文件"my_excel.xlsx"。接着通过wb.sheetnames属性获取所有sheet名称,并通过wb[first_sheet_name]获取第一个sheet的对象。

然后通过ws.max_row和ws.max_column获取总行数和总列数,并使用ws.cell(row=row, column=col)读取每个单元格的数据,最后输出到控制台上。

示例说明

以上两个示例分别演示了如何创建和读取Excel文件,可以根据实际需要进行修改和补充。另外,在实际使用openpyxl时还有很多其他的操作方式,比如插入、删除、合并单元格等,建议大家自己去探索和尝试。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python操作Excel神器openpyxl使用教程(超详细!) - Python技术站

(1)
上一篇 2023年5月13日
下一篇 2023年5月13日

相关文章

  • Python中正则表达式的用法总结

    下面是对“Python中正则表达式的用法总结”的完整实例教程。 一、什么是正则表达式 正则表达式是一种字符串匹配的工具,用来模糊匹配、精确匹配等。在Python中,正则表达式是通过re模块来进行操作的。下面列出几个基础的正则表达式。 .:匹配一个任意字符 ^:匹配开头 $:匹配结尾 *:匹配前一个字符出现0次或多次(贪婪匹配) +:匹配前一个字符出现1次或多…

    python 2023年5月13日
    00
  • python实现实时监控文件的方法

    下面是Python实现实时监控文件的方法的完整攻略: 1. 什么是文件监控 文件监控是指通过一定的方式来实时检测文件的变化,例如新建、删除、修改等。这对于程序开发、系统管理等领域都非常重要,因为文件的变化可能会对系统产生很大的影响。 2. Python中的文件监控工具 Python中有很多文件监控工具,其中比较常用的有watchdog、pyinotify和i…

    python 2023年6月5日
    00
  • 工匠回忆(一)

    不久之前看过《python工匠》,腾讯大佬朱磊写的,后来一段时间零零散散也会翻开看看,强烈推荐!!! 1、变量注释   变量与注释是最接近自然语言的东西,把变量与注释搞好,同样一段代码,却带来两种截然不同的体验   1.1、变量开辟的必要性   1.2、变量注意靠近使用   1.3、注意变量描述性要强、同时注意其长度   1.4、变量的命名要突出类型   1…

    python 2023年5月4日
    00
  • pip报错“OSError: [Errno 13] Permission denied: ‘/usr/local/lib/python3.6/dist-packages/pip/_internal/utils/typing_extensions.py’”怎么处理?

    当使用pip安装Python包时,可能会遇到“OSError: [Errno 13] Permission denied: ‘/usr/local/lib/python3.6/dist-packages/pip/_internal/utils/typing_extensions.py’”错误。这个错误通常是由以下原因之一引起的: 用户权限不足:如果用户权限不…

    python 2023年5月4日
    00
  • 彻底解决Python包下载慢问题

    针对Python包下载慢问题,下面是一份完整的攻略,供参考: 1. 更换镜像源 很多Python包在下载时会通过pip去官网下载源码,但是国内访问官网的速度并不可能跟得上国外的访问速度,因此我们需要通过更换Python包镜像源来解决下载慢的问题。 方法 打开 清华镜像源 页面; 根据自己使用的 Python 版本和操作系统,在“常用链接”块中找到对应版本链接…

    python 2023年5月14日
    00
  • python实现在遍历列表时,直接对dict元素增加字段的方法

    要在Python中遍历字典列表,并为其元素添加新字段,通常有两种方法: 方法一:使用for循环遍历并修改元素 # 定义一个包含字典元素的列表 users = [ {‘name’: ‘John’, ‘age’: 25}, {‘name’: ‘Jane’, ‘age’: 20}, {‘name’: ‘Bob’, ‘age’: 30} ] # 遍历列表 for u…

    python 2023年5月13日
    00
  • Python+selenium实现自动循环扔QQ邮箱漂流瓶

    Python+selenium实现自动循环扔QQ邮箱漂流瓶 引言 在教程开始之前,本文假设你已经具备以下的前置知识:1. Python基础知识2. Selenium库的基本使用3. Chrome浏览器基本的操作 如果你还没有相关的经验,建议先学习相关基础知识后再进行本教程的实践。 在本教程中,我们将使用Python语言和Selenium库实现QQ邮箱漂流瓶的…

    python 2023年5月19日
    00
  • python梯度下降算法的实现

    下面我将详细讲解“Python梯度下降算法的实现”的完整攻略,包括介绍梯度下降算法的原理、步骤和常见的实现方式。同时,我将提供两个示例来说明如何在Python中实现梯度下降算法。 1. 梯度下降算法原理 梯度下降算法是一种常用的优化算法,可以用于求解损失函数的极小值。其基本思想是通过迭代的方式不断调整参数的取值,最终使得损失函数的值达到最小。 在梯度下降算法…

    python 2023年6月5日
    00
合作推广
合作推广
分享本页
返回顶部