因为工作经常遭遇繁重的重复工作,不想将时间花在没有价值的加班上,开始接触Python,很遗憾只能通过网络,书籍等途径自己学习,虽然Python很多人都说很简单,但是对于我这种程序小白来说依然没那么轻松,好的是已经可以让程序来对我的工作改进很多,有时候真的不得不让人惊叹计算机程序的力量是人力远远不及的,来分享一个人力与程序天然差异的小例子。
真实场景:
某天接到领导任务,因为需要上传资料进某个固定的系统,可是系统需要特定的格式,前面7列需要根据第1列的内容合并单元格,意思是说第1列有相同内容,就需要合并,后面6列跟随第1列的格式合并。面对将近1万笔的资料想不到通过excel如何办到,手动也太难,没办法就尝试Python。
原始表格长这样:
订单编号 | 产品编号 | 产出 | 单位 | 生产日期 | 年份 | 季节 | 数据ID | AAAAAA |
090191GG001 | GACD7135 | 329 | Pieces | 31-01-2022 | 2021 | Q1/Q2 | 6255 | VNRPE |
090191GG001 | GACD7135 | 329 | Pieces | 31-01-2022 | 2021 | Q1/Q2 | 7001 | 6A344 |
090191GG001 | GACD7135 | 329 | Pieces | 31-01-2022 | 2021 | Q1/Q2 | 7001 | CA353 |
1002XPGG | ACDA6466 | 330 | Pieces | 15-01-2022 | 2022 | Q1/Q2 | 6003 | 21121 |
1002XPGG | ACDA6466 | 330 | Pieces | 15-01-2022 | 2022 | Q1/Q2 | 6255 | BXCZT |
1002XPGG | ACDA6466 | 330 | Pieces | 15-01-2022 | 2022 | Q1/Q2 | 7001 | 1VUMC |
1002XPGG | ACDA6466 | 330 | Pieces | 15-01-2022 | 2022 | Q3/Q4 | 7001 | 1VUMC |
1002XPGG002 | ACDD4489 | 311 | Pieces | 15-01-2022 | 2022 | Q3/Q4 | 6003 | 21121 |
1002XPGG002 | ACDD4489 | 311 | Pieces | 15-01-2022 | 2022 | Q1/Q2 | 6255 | BXCZT |
1002XPGG002 | ACDD4489 | 311 | Pieces | 15-01-2022 | 2022 | Q1/Q2 | 7001 | 1VUMC |
1002XPGG002 | ACDD4489 | 311 | Pieces | 15-01-2022 | 2022 | Q1/Q2 | 7001 | 1VUMC |
1002XPGG00X | ACDD4493 | 306 | Pieces | 15-01-2022 | 2022 | Q3/Q4 | 6003 | 21121 |
1002XPGG00X | ACDD4493 | 306 | Pieces | 30-01-2022 | 2022 | Q3/Q4 | 6255 | BXCZT |
1002XPGG00X | ACDD4493 | 306 | Pieces | 30-01-2022 | 2022 | Q1/Q2 | 7001 | 1VUMC |
很小的代码如下,程序很简单,没有加注释,总共只有17行,很容易可以看懂:
最后完成的形式如下:
订单编号 | 产品编号 | 产出 | 单位 | 生产日期 | 年份 | 季节 | 数据ID | AAAAAA |
090191GG001 | GACD7135 | 329 | Pieces | 31-01-2022 | 2021 | Q1/Q2 | 6255 | VNRPE |
7001 | 6A344 | |||||||
7001 | CA353 | |||||||
1002XPGG | ACDA6466 | 330 | Pieces | 15-01-2022 | 2022 | Q1/Q2 | 6003 | 21121 |
6255 | BXCZT | |||||||
7001 | 1VUMC | |||||||
7001 | 1VUMC | |||||||
1002XPGG002 | ACDD4489 | 311 | Pieces | 15-01-2022 | 2022 | Q3/Q4 | 6003 | 21121 |
6255 | BXCZT | |||||||
7001 | 1VUMC | |||||||
7001 | 1VUMC | |||||||
1002XPGG00X | ACDD4493 | 306 | Pieces | 15-01-2022 | 2022 | Q3/Q4 | 6003 | 21121 |
6255 | BXCZT | |||||||
7001 | 1VUMC |