咔片PPT · AI自动生成演示文稿,模板丰富、排版精美 讯飞智文 · 一键生成PPT和Word,高效应对学习与办公

实例05—辛苦修改3小时,Python赶来帮大忙

模拟场景需求:

由于天气寒冷,大雪封路,加上疫情防控需要,快递涨价,公司不得不对曾经包邮的产品价格做出调整,由于包邮产品众多且五花八门,如果采取一个个查找,再修改商品价格,至少需要3个小时才能完成,有没有批量的计算机自动完成的呢?第三方软件肯定是没有的,这时Python处理Excel文件的模块openpyxl派上用场了,看我怎么样用它搞定我们的“海量数据中批量修改大数据”。

3小时眼花手酸Excel表格大数据修改,Python3分钟搞定

1、用到的知识点:

Python的循环,字符串及操作方法,wb对象基本操作,ws整列读写方法等,

2、用到的文件:

网络公开的Excel文件,淘宝爆款清单2017版,是一个超大型的Excel文件,足足有四千多行的数据,如需要请下载,通过阿里云盘分享,链接如下:https://www.aliyundrive.com/s/8xbUHENrDzC

待处理数据

通过关键字,3分钟批量修改Excel大数据

3、修改要求:

对于商品名称中带有“包邮”字样的商品,其价格加上1.88元,并且更新,修改完毕后保存到新的文件中,以防万一程序有缺陷,将电子表改错。

4、操作步骤思维导图:

5、代码操作编写截图:

代码截图1

代码截图2

give your the code:

from openpyxl import load_workbook wb = load_workbook('淘宝爆款清单.xlsx') ws = wb.active # 方案一:逐行读取全表格 for i in range(2,ws.max_row+1): tmp_name = ws.cell(row=i,column=5).value #逐行的第5列数据 if '包邮' in tmp_name: # 由于每行对应的价格是文本数据,需要转化成float再加上1.88 ws.cell(row=i,column=6).value = float(ws.cell(row=i,column=6).value) + 1.88 # 错误方式:ws.cell(row=i,column=6).value += 1.88 # 方案二:按列遍历 # 选取商品名称所在列,这里是E列 # cells = ws['E'] # for cell in cells: # i = cell.row # j = cell.column # tmp_name = cell.value # if '包邮' in tmp_name: # ws.cell(i,j+1).value = float(ws.cell(i,j+1)) + 1.88

6、运行结果展示:

展示正确结果

网友们可以结合本例子进行大数据批量修改,要举一反三,灵活应用,不懂基础的操作的可以参考我的Python处理Excel入门视频合集哦<>

亲,要亲自动手敲,复制一时爽,学坏没商量^_^,实战课程的视频随后会推出,请多多关注哦。