python处理excel

安装包

shell 复制代码
pip install openpyxl

一、读取excel

导出

py 复制代码
import openpyxl

# 打开 Excel 文件
workbook = openpyxl.load_workbook("data.xlsx")

print(workbook)
shell = workbook.active
# 行
row = shell.max_row
# 列
column = shell.max_column

for i in range(1, column + 1):
    for j in range(1, column + 1):
        cell_value = shell.cell(row=i, column=j).value
        print(cell_value, end="\t")
    print()

json格式的导出

py 复制代码
import openpyxl
import json

# 打开 Excel 文件
workbook = openpyxl.load_workbook('data.xlsx')
sheet = workbook.active

# 获取第一行作为列名
columns = [sheet.cell(row=1, column=col).value for col in range(1, sheet.max_column + 1)]

# 创建一个空列表用于存储数据
data = []

# 读取 Excel 中的数据并添加到列表中
for row in range(2, sheet.max_row + 1):
    row_data = {}
    for col, column_name in enumerate(columns, start=1):
        cell_value = sheet.cell(row=row, column=col).value
        row_data[column_name] = cell_value
    data.append(row_data)

# 将数据转换为 JSON 字符串,并关闭 ASCII 编码以显示中文
json_data = json.dumps(data, ensure_ascii=False, indent=4)

# 打印 JSON 字符串
print(json_data)

# 如果需要将 JSON 写入文件,可以使用下面的代码
# with open('output.json', 'w', encoding='utf-8') as file:
#     file.write(json_data)

二、导出

py 复制代码
import openpyxl

# 创建一个新的 Excel 工作簿
workbook = openpyxl.Workbook()

# 激活默认的工作表(sheet)
sheet = workbook.active

# 设置表头(假设这是要导出的数据)
headers = ['Name', 'Age', 'Email']
data = [
    ('Alice', 25, 'alice@example.com'),
    ('Bob', 30, 'bob@example.com'),
    ('Charlie', 28, 'charlie@example.com')
]

# 写入表头
for col, header in enumerate(headers, start=1):
    sheet.cell(row=1, column=col).value = header

# 写入数据
for row, row_data in enumerate(data, start=2):
    for col, value in enumerate(row_data, start=1):
        sheet.cell(row=row, column=col).value = value

# 保存 Excel 文件
workbook.save('exported_data.xlsx')
相关推荐
Q_Q51100828510 分钟前
python+django/flask的图书馆管理系统vue
spring boot·python·django·flask·node.js·php
cwh_rs_giser15 分钟前
如何高效设置机器学习超参数?——借鉴成熟AutoML框架的实践
人工智能·python·机器学习
逻极18 分钟前
Scikit-learn 入门指南:从零到一掌握机器学习经典库(2025 最新版)
人工智能·python·机器学习·ai·scikit-learn·agent
再玩一会儿看代码37 分钟前
Ken的Java学习之路——Java中关于面向对象
java·开发语言·经验分享·python·学习
Q_Q51100828543 分钟前
python+django/flask的美食交流宣传系统vue
spring boot·python·pycharm·django·flask·node.js·php
Q_Q5110082851 小时前
python+django/flask+vue的基层智能化人员调度系统pycharm-计算机毕业设计
spring boot·python·pycharm·django·flask·node.js
mudtools1 小时前
.NET驾驭Excel之力:Excel应用程序的创建与管理
c#·.net·excel·wps
mudtools1 小时前
.NET驾驭Excel之力:自动化数据处理 - 开篇概述与环境准备
c#·自动化·.net·excel·wps
cx330上的猫1 小时前
【数据分析-Excel】常用函数汇总
数据分析·excel
lapiii3583 小时前
[智能体设计模式] 第4章:反思(Reflection)
人工智能·python·设计模式