使用openpyxl遍历excel表格每行每列处理单元格的数据 (案例:处理学生成绩文件)

需求

为了让学生成绩好看一点:

1.每个分数都加20
2.语数英及格分90,物理,化学,生物,地理及格分60。在每个学生成绩都加20分的情况下如果没达到及格线,则让该分数变成及格分。

在这里插入图片描述

代码

安装包:

pip install openpyxl

遍历每个单元格,如果该单元格是数字,则该数字+20,然后写回文件

import openpyxl

# 打开xlsx文件
file_path = 'your_file.xlsx'
workbook = openpyxl.load_workbook(file_path)

# 获取第一个工作表
sheet = workbook.active

# 遍历每个单元格
for row in sheet.iter_rows(min_col=2, max_col=sheet.max_column):
    for cell in row:
        # 检查单元格是否为数字
        if isinstance(cell.value, (int, float)):
            # 如果在第2列到第4列,并且数字小于90,则替换为90
            if 2 <= cell.column <= 4 and cell.value < 90:
                cell.value = 90
            # 如果在第4列到最后一列,并且数字小于60,则替换为60
            elif cell.column >= 4 and cell.value < 60:
                cell.value = 60

# 保存修改后的xlsx文件
workbook.save(file_path)

在每个学生成绩都加20分的情况下如果没达到及格线,则让该分数变成及格分(语数英及格分90,物理,化学,生物,地理及格分60)

import openpyxl

# 打开xlsx文件
file_path = 'your_file.xlsx'
workbook = openpyxl.load_workbook(file_path)

# 获取第一个工作表
sheet = workbook.active

# 遍历每个单元格
for row in sheet.iter_rows():
    for cell in row:
        # 检查单元格是否为数字
        if isinstance(cell.value, (int, float)):
            # 对数字进行加20操作
            cell.value += 20

# 保存修改后的xlsx文件
workbook.save(file_path)
  • 9
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

computer_vision_chen

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值