Python库`openpyxl`是一个用于读取和写入Excel 2010 xlsx/xlsm/xltx/xltm文件的库。

简介: 【6月更文挑战第19天】`openpyxl`是Python处理xlsx文件的库,支持读写Excel 2010格式。使用`pip install openpyxl`安装。基本操作包括加载文件、读写单元格、操作行和列。例如,加载Excel后,可以读取单元格`A1`的值,或将“Hello, World!”写入`A1`。还可修改单元格内容,如加1后保存到新文件。更多功能,如样式和公式,见官方文档[1]。[1]: <https://openpyxl.readthedocs.io/en/stable/>

Python库openpyxl是一个用于读取和写入Excel 2010 xlsx/xlsm/xltx/xltm文件的库。它允许你在程序中操作Excel工作簿,包括创建新的工作簿、打开现有工作簿、添加或删除工作表、修改单元格内容以及进行其他更复杂的操作。

以下是一些使用openpyxl的基本操作:

安装

首先,你需要通过pip安装openpyxl库:

pip install openpyxl

基本用法

打开一个现有的Excel文件

from openpyxl import load_workbook

# 加载指定路径下的 Excel 文件
wb = load_workbook(filename='example.xlsx')

# 获取所有的工作表名称
print(wb.sheetnames)

# 获取第一个工作表(索引为0)
sheet = wb['Sheet1']

# 获取单元格内容
cell_value = sheet['A1'].value
print(cell_value)

创建一个新的Excel文件并写入数据

from openpyxl import Workbook

# 创建一个新的工作簿对象
wb = Workbook()

# 获取活动工作表(默认是第一个工作表)
ws = wb.active

# 将值写入到特定单元格
ws['A1'] = 'Hello, World!'

# 保存工作簿到指定路径
wb.save('new_file.xlsx')

操作行和列

# 获取行的所有单元格
row_cells = ws[row_number]

# 获取列的所有单元格
column_cells = [c for c in ws.iter_cols(min_col=col_num, max_col=col_num)]

# 遍历行和列
for row in ws.iter_rows():
    for cell in row:
        print(cell.value)

更多高级操作

你可以使用openpyxl执行许多其他操作,例如样式设置、合并单元格、公式计算等。查看官方文档以获取详细信息:https://openpyxl.readthedocs.io/en/stable/

示例

假设你有一个名为data.xlsx的Excel文件,其中包含如下数据:

A B
1 2
3 4

以下代码将读取该文件,并在每个单元格的内容后加1,然后将结果保存到新的Excel文件中:

import openpyxl

# 加载已有的Excel文件
workbook = openpyxl.load_workbook("data.xlsx")
sheet = workbook.active

# 更新单元格内容
for row in sheet.iter_rows(values_only=True):
    for i, value in enumerate(row):
        sheet.cell(row=row[0].row, column=i + 1).value = value + 1

# 保存更改到新文件
workbook.save("updated_data.xlsx")

这个例子展示了如何使用openpyxl来处理简单的数据操作。对于更复杂的需求,可以查阅官方文档中的示例和API说明。

相关文章
|
7天前
|
安全 网络安全 数据安全/隐私保护
`certifi`是一个Python包,它提供了一个包含Mozilla证书颁发机构(CA)Bundle的PEM文件。
`certifi`是一个Python包,它提供了一个包含Mozilla证书颁发机构(CA)Bundle的PEM文件。
|
7天前
|
存储 对象存储 Python
`openpyxl`是一个用于读写Excel 2010 xlsx/xlsm/xltx/xltm文件的Python库。它不需要Microsoft Excel,也不需要.NET或COM组件。
`openpyxl`是一个用于读写Excel 2010 xlsx/xlsm/xltx/xltm文件的Python库。它不需要Microsoft Excel,也不需要.NET或COM组件。
|
10天前
|
Python
python存取yaml文件
python存取yaml文件
|
7天前
|
存储 Python
`tempfile`模块在Python中用于创建临时文件和目录。
`tempfile`模块在Python中用于创建临时文件和目录。
|
9天前
|
前端开发 JavaScript PHP
技术心得:前端点击按钮,导入excel文件,上传到后台,excel接收和更新数据
技术心得:前端点击按钮,导入excel文件,上传到后台,excel接收和更新数据
10 0
|
2月前
|
前端开发 Java
基于Java爬取微博数据(二) 正文长文本+导出数据Excel
【5月更文挑战第12天】基于Java爬取微博数据,正文长文本+导出数据Excel
|
2天前
|
Java 数据安全/隐私保护
Java无模版导出Excel 0基础教程
经常写数据导出到EXCEL,没有模板的情况下使用POI技术。以此作为记录,以后方便使用。 2 工具类 样式工具: 处理工具Java接口 水印工具 导出Excel工具类 3 测试代码 与实际复杂业务不同 在此我们只做模拟 Controller Service 4 导出测试 使用Postman进行接口测试,没接触过Postman的小伙伴可以看我这篇博客Postman导出excel文件保存为文件可以看到导出很成功,包括水印 sheet页名称自适应宽度。还有一些高亮……等功能可以直接搜索使用
Java无模版导出Excel 0基础教程
|
2天前
|
前端开发
使用Postman导出excel
在本文档中,作者分享了如何使用Postman测试导出Excel接口的两种方法。配以四张图片说明了设置步骤,包括选择接口请求方式、设置Header(Content-Type: multipart/form-data)、Body中选取form-data类型以及指定文件。尽管代码指定了文件名,但在Postman的响应中不会显示,提示需要前端进一步处理。
|
1月前
|
easyexcel Java API
SpringBoot集成EasyExcel 3.x:高效实现Excel数据的优雅导入与导出
SpringBoot集成EasyExcel 3.x:高效实现Excel数据的优雅导入与导出
159 1
|
1月前
|
JSON 资源调度 JavaScript
蓝易云 - vue实现导出excel的多种方式
以上两种方式都可以实现在Vue中导出Excel的功能,你可以根据你的需求选择合适的方式。
23 1