【Python-办公自动化】1秒比较出2张表格之间的不同并标黄加粗

欢迎来到"花花 Show Python",一名热爱编程和分享知识的技术博主。在这里,我将与您一同探索Python的奥秘,分享编程技巧、项目实践和学习心得。无论您是编程新手还是资深开发者,都能在这里找到有价值的信息和灵感。

自我介绍:

我热衷于将复杂的技术概念以简单易懂的方式呈现给大家,让每个人都能享受到编程的乐趣。我相信,通过不断的学习和实践,我们都能够成为更好的开发者。

关注提示:

如果您喜欢我的内容,别忘了点击关注哦!这样您就可以第一时间获取我的更新和分享。您的支持是我不断前进的动力。

原表1长这样:
原表2长这样:

代码运行比较后的表1长这样:

代码运行比较后的表2长这样:

python 复制代码
# 导入openpyxl库中的PatternFill类,用于设置单元格的填充样式  
from openpyxl.styles import PatternFill  
# 导入openpyxl库中的colors模块,但在这个例子中,我们实际上可以直接使用colors.Color类或者通过字符串指定颜色  
from openpyxl.styles import colors  
# 导入openpyxl库中的Font类,用于设置单元格的字体样式  
from openpyxl.styles import Font  
# 导入openpyxl库,并给它一个别名pxl,以便在代码中更简洁地引用  
import openpyxl as pxl  
  
# 加载名为'data1.xlsx'的Excel文件,并将其存储在workbook_1变量中  
workbook_1 = pxl.load_workbook(r'表1.xlsx')  
  
# 加载名为'data2.xlsx'的Excel文件,并将其存储在workbook_2变量中  
workbook_2 = pxl.load_workbook(r'表2.xlsx')  
  
# 选择workbook_1中的活动工作表(通常是第一个工作表),并将其存储在workbook_1_sheet_1变量中  
workbook_1_sheet_1 = workbook_1.active  
  
# 选择workbook_2中的活动工作表(通常是第一个工作表),并将其存储在workbook_2_sheet_1变量中  
workbook_2_sheet_1 = workbook_2.active  
  
# 计算两个工作表中较大的行数和列数,以便遍历较大的区域  
max_row = workbook_1_sheet_1.max_row if workbook_1_sheet_1.max_row > workbook_2_sheet_1.max_row else workbook_2_sheet_1.max_row  
max_column = workbook_1_sheet_1.max_column if workbook_1_sheet_1.max_column > workbook_2_sheet_1.max_column else workbook_2_sheet_1.max_column  
  
# 遍历两个工作表的每个单元格(基于较大的行数和列数)  
for i in range(1, (max_row + 1)):  # 从第1行遍历到最大行  
    for j in range(1, (max_column + 1)):  # 从第1列遍历到最大列  
        cell_1 = workbook_1_sheet_1.cell(i, j)  # 获取workbook_1中当前位置的单元格  
        cell_2 = workbook_2_sheet_1.cell(i, j)  # 获取workbook_2中当前位置的单元格  
        # 如果两个单元格的值不相等  
        if cell_1.value != cell_2.value:  
            # 将workbook_1中当前单元格的填充样式设置为黄色  
            cell_1.fill = PatternFill("solid", fgColor='FFFF00')  
            # 将workbook_1中当前单元格的字体设置为黑色并加粗  
            cell_1.font = Font(color=colors.BLACK, bold=True)  
            # 将workbook_2中当前单元格的填充样式也设置为黄色  
            cell_2.fill = PatternFill("solid", fgColor='FFFF00')  
            # 将workbook_2中当前单元格的字体也设置为黑色并加粗  
            cell_2.font = Font(color=colors.BLACK, bold=True)  
  
# 将修改后的workbook_1保存为名为'data3.xlsx'的文件  
workbook_1.save('修改后表1.xlsx')  
  
# 将修改后的workbook_2保存为名为'data4.xlsx'的文件  
workbook_2.save('修改后表2.xlsx')
相关推荐
Lris-KK37 分钟前
力扣Hot100--94.二叉树的中序遍历、144.二叉树的前序遍历、145.二叉树的后序遍历
python·算法·leetcode
zy_destiny1 小时前
【工业场景】用YOLOv8实现抽烟识别
人工智能·python·算法·yolo·机器学习·计算机视觉·目标跟踪
(●—●)橘子……2 小时前
记力扣2009:使数组连续的最少操作数 练习理解
数据结构·python·算法·leetcode
nueroamazing2 小时前
PPT-EA:PPT自动生成器
vue.js·python·语言模型·flask·大模型·项目·ppt
一壶浊酒..2 小时前
python 爬取百度图片
开发语言·python·百度
该用户已不存在3 小时前
工具用得好,Python写得妙,9个效率工具你值得拥有
后端·python·编程语言
广龙宇3 小时前
【一起学Rust · 项目实战】使用getargs库来获取命令行参数
开发语言·python
mit6.8244 小时前
[Agent开发平台] 后端的后端 | MySQL | Redis | RQ | idgen | ObjectStorage
人工智能·python
学编程的小虎4 小时前
用 Python + Vue3 打造超炫酷音乐播放器:网易云歌单爬取 + Three.js 波形可视化
开发语言·javascript·python
yunson_Liu4 小时前
编写Python脚本在域名过期10天内将域名信息发送到钉钉
开发语言·python·钉钉