Leader安排的三小时工作量,我如何用python十秒完成

作为刚入职的小菜鸡,领导一般都会安排你处理各种文档,美其名曰:熟悉项目、熟悉流程。
随后,你上班的时间充斥着Ctrl+c/Ctrl+v,做那些毫无意义的复制粘贴工作,不用动脑,感觉自己变成了一头驴子(参考书籍《职场动物进化手册》)。

作为程序员的我拒绝接受低效和毫无创意的工作,拒绝变成呆傻的驴子。我开动小脑瓜想解决办法。

(1)甩锅给别人
甩锅给别人当然是最快速,最轻松的方法。但这种逃避责任的事情,我实在做不来。另外,把锅甩给别人,但leader最终会向你要结果,如果做的不好,对自己有影响。

(2)变成驴子Ctrl+c/Ctrl+v
像驴子一样,花三个小时Ctrl+c/Ctrl+v。质量有保证很好,但浪费了三小时生命做无意义的事,无法容忍。

(3)用C语言写处理程序
这个想法冒出来的时候,我直接PASS了。哈哈,关于这点懂的人自然懂,不做解释。

(4)用word写宏
我不会用word写宏,三个小时内无法学会,放弃。

而到最后,我才想起公司电脑装了python,我可以用python来解决这个问题。

作为经常用它写爬虫玩的程序员,第一反应竟然不是用python处理word文档,真的是惭愧。

我不是磨叽的人,既然想到方法就开干。

首先,用google百度一下用来处理word的python第三方库,结果如图。
寻找方法

接着,打开命令行,输入:pip install pyton-docx。
开始安装
回车,安装成功
安装成功

之后,开始设计程序逻辑。

**(1)需解决问题:**有两个表格table1和table2,table1有300行,table2有500行。其中table2包含table1,现需要找到table2与table1相同的行,并将table2中该行的最后一个单元格中的内容复制到table1相应行的最后一个单元格。

是不是感觉很绕,说白了就是在一个表中寻找与另一个表相同的行,并将内容复制进去。

如果只处理简单的几行,那用Ctrl+c/Ctrl+v很快就能结束,但处理几百行的表格怕是会把眼睛看瞎吧。

(2)程序流程图如下:
程序流程图
(3)代码实现:

import docx
from docx import Document

path = "./table1.docx"
document = Document(path)
tables = document.tables
table0 = tables[0]
table1 = tables[1]
i=1
j=1
print(len(table0.rows))
print(len(table1.rows))
while((i < len(table0.rows))or(j < len(table1.rows))):
        if(table0.cell(i,1).text == table1.cell(j,1).text):
                table0.cell(i,7).text = table1.cell(j,7).text
                i = i+1
                j = j+1
                print(table1.cell(i,7).text)
        else:
                j = j+1
document.save('./table1.docx')
print(i,j)

步骤写的比较详细,具体的实现代码也粘贴出来了。即使是刚入门的小白也能看懂,并跟着一步步操作。

由于上述代码只是处理简单的复制粘贴问题,代码逻辑很简单,没什么技术含量。

但这是我第一次用python解决实际工作遇到的问题,并且极大提高了我的工作效率。

如果没有这简单的代码,我可能需要花费三个小时进行Ctrl+c/Ctrl+v,而这并不会对成长有什么作用,反而白白浪费了生命。

这次的问题给我极大的启发,希望以后继续发掘python的在实际工作中用处,提高工作效率,而且能够利用工作时间学习python,岂不一举两得。

本文收发于公众号:酷酷的coder
酷酷的coder

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值