就这样,经历了噩梦般的几个月……

等到了2017年年初,看到一个词:

图灵完备。

一个图灵完备的语言理论上能解决任何算法。

|

|

V

显然,Python是一种图灵完备的语言。

|

|

V

那Python应该在理论上能替我处理所有事情(生孩子应该不行~~)

|

|

V

我为什么不试着用Python去替我完成工作呢?

2.走了一些弯路,但胜过原地踏步

我的第一步是从数据清洗开始的。(当然那时并不知道这个叫数据清洗)

先把刚才说的那个70M的Excel导成csv,去掉了其中不必要的格式、样式、对象等。

然后我想统一一下各个数据的标准名称,刚才说了,由于经手的人太多,同一个数据,怎么表述的都有,几十万的数据量,人工交叉比对的话显然是不现实的。(后来才知道了笛卡尔积这个词)

我第一步先使用了Excel自身的去重功能,将所有的供货商名称进行了一个去重,剩下了大概5000个左右的名称。

然后,作为一个懒人,我肯定不会用人工去比对了。

Python有一个库,叫做fuzzywuzzy,用它来进行模糊匹配。

from fuzzywuzzy import fuzz

print( fuzz.ratio("内容1", "内容2"))

会输出一个0——100的数字,数字越大代表这两个内容越相似。

所以我就写了一个循环,把这5000多个项目里面,匹配度超过70%以上的数据组都筛了出来,再去Excel里面手工替换(没办法,那时候还不会操作Excel)

然后整理了一下各个行列的位置,这样我就有了一个相对准确的数据源。

后来思考了一下,把数据存在Excel里面不是个长久之计啊,毕竟几十万数据呢,就想把数据导入到数据库里。大学时候考过计算机二级的Access(当然,虽然我考过,但是没考过……),就想导入Access,可是那个Python库没弄明白,硬是读不出来,就卡死了。

后来想到,之前自己从网上下载的某某私服的一键端里,有个MySQL数据库的一键启动方式,试了试居然能用,就把那个MySQL程序整个拷出来、清干净,作为了我的数据库。(当时想学怎么自己配置MySQL来着,没研究明白……这个数据库也就是我们现在提供的MySQL数据库的前身,当然了,我们现在提供的是重新制作的无毒的船新版本)

然后就是使用Navicat导入Excel,使用pymysql库进行读取,这样,咱也是趁数据库的人了~

接下来,就是要进行数据分析了,由于当时没学会pandas,数据透视图的效果死活做不出来,不得已,只好新建N个列表,用一堆if...else... ,把同类数据存入同一个列表中,求和,求平均值之类的(笨办法也是办法,能抓住耗子就是好猫,先把程序跑起来能用就好)

分析出了结果,要写入excel了,但是由于没有研究明白怎么进行追加写入(xlutils库各种限定太多了……),只好使用xlwt把数据写到一个空Excel中,然后手工把一整片复制粘贴过去……反正也是解决了……能用了……

因为每天的仓库返回的数据还要向数据库里追加,就写了个录入程序,先用xlrd读取、然后fuzzywuzzy模糊匹配、最后pymysql写入。

这时候,我的工作已由每天七八个小时,进化到了每天4小时左右。

(这一部分代码就不贴了,祖传代码向来被称为屎山,这些代码也是简陋的过分的那种……)

3.走上杂务工作的快车道罗伯特·清琦写的那本《富爸爸穷爸爸》提出过一个概念,当你实现财务自由以后,你的财富积累就会走上良性循环的快车道,你的就会越来越容易提高被动收入。

同理,当你实现一部分的工作自动化以后,你就会走上一个“工作自由”的快车道,因为你有更多的时间能用来研究如何去更高效的完成余下的那堆工作,然后,每天工作的时间就会越来越短。

为什么上文中我有那么多括号写的各种搞不定?因为没时间啊!

现在好了,每天的工作时间已经被我砍了一半了,那么我就可以思考,如何解决各类的技术问题。

我学会了Excel的各种库,比如xlrd、xlwt、xlsxwriter、openpyxl、xlwings、win32com,能根据自己的需要选择需要用的库;还学会了同属Office系列的python-docx和python-pptx,开始尝试自动制作Word和PPT;学会了自动发邮件的stmp库、zmail库;学会了能操作微信发消息的itchat;学了爬虫、学了解压缩、学了调整图片大小、学了Word转pdf等等等等很多库或者功能。

随着学习,每天的工作时间越来越短……

现在,我每天的工作,只需要十分钟,最快记录四分钟,就能完成。

每天上班,第一件事,优雅的运行一个py文件,一堆import后面,只有

就完成了日常工作,然后就是需要打印,手签,送各领导审阅的过程了。

一个保守的、传统的、几十年都不会起一丝波澜的国有企业,硬生生被我干出来了一个IT岗,升职加薪都已达成。

4、后续的思考

现在,我能极快的完成每天的工作,而后就是大片的学习思考的时间。

如今,

我已经,

我已经,

我已经,

把数据库移到了一台淘汰下来的办公电脑上,又用另外一台热备,作为公共联网数据库;

我已经,

用pyqt写了一个带gui的数据输出软件,所有同事都可以自由输出数据进行分析了;

我已经,

用pandas、matplotlib写了一个自动生成数据分析图片的软件,再做月报、周报什么的汇报材料,不用再通过Excel手工作图了;

我已经,

用pandas、matplotlib配合pyqt写了一个入库分析软件,大家输入时间段和限定条件后一键进行数据分析了,不会有同事老找我要数据了;

我已经,

用xlrd、python-docx写了一个合同生成器,旺季采购的同事不用焦头烂额的改合同了;

我已经,

用numpy配合pyqt做了一个购销存平衡软件,可以让领导们在决策时通过拖动滑块就可以实时展现不同购、销情况下库存情况了;

我已经,

用爬虫配合pymysql写了一个实时粮价获取数据库,告别了浏览网页逐行复制价格的方式;

未来,

未来,

未来,

未来,

我计划做一个公司内部网站,把之前的所有C/S架构的软件都改成B/S。

未来,

我计划做一个数据驾驶舱,供领导决策使用。

python 写字机器人_机器人股票:用 Python 自动化办公能做到哪些有趣或有用的事情?作者:陈廷聿...相关推荐

  1. 用python自动化办公_知乎1800赞 | 用Python自动化办公能做到哪些有趣或有用的事情?...

    原标题:知乎1800赞 | 用Python自动化办公能做到哪些有趣或有用的事情? 知友:陈廷聿(1800+ 赞同) 利益相关:Python办公自动化课程的讲师 我想介绍一下我是如何从每天工作8小时,进 ...

  2. 70后的人用python自动化办公_用 Python 自动化办公能做到哪些有趣或有用的事情?...

    Python自动化办公能做到的事可太多了 常用如下: python 使用 python-docx 操作 word 1.python-docx 库介绍 * 该模块儿可以创建.修改 Word(.docx) ...

  3. python自动化可以做什么菜_用 Python 自动化办公能做到哪些有趣或有用的事情?...

    本篇回答内容来自CSDN博主肉尼 1.CSV (1)写csv文件 import csv def writecsv(path,data): with open(path, "w") ...

  4. python智能办公系统_用 Python 自动化办公能做到哪些有趣或有用的事情?

    Python的学习资料,网上随便搜都是大把的 不过那些基本上没什么干货 好的学习资料是系统的,全面的 从实战例子,到工具到源码,都全面的很 片面的学习,你肯定是学不好的 而且,大多数资料都是一堆理论的 ...

  5. python标准词匹配_用 Python 自动化办公能做到哪些有趣或有用的事情?

    我想介绍一下我是如何从每天工作8小时,进化成每天工作10分钟的. 不涉及太多的技术细节,毕竟知乎是一个分(现)享(编)知(故)识(事)的地方 0.先自我介绍一下: 我不是程序员,大学学的也不是IT专业 ...

  6. 用python自动化玩游戏封号吗_用 Python 自动化办公能做到哪些有趣或有用的事情?...

    测试狗没时间陪女票?python自动化教你每天定时给女票讲笑话春天到了,万物复苏.....(咳咳,跑题了) 是不是有人冲着标题进来了,先别走... 最近压力比较大,就想着做一点有趣味的东西. 比如说, ...

  7. python能用来做什么有意思的事情-用 Python 自动化办公能做到哪些有趣或有用的事情?...

    首先,很感谢党,感谢政府,感谢麻瓜编程,能在有幸之年认识一帮让我膜拜的大佬(咳咳,有点跑题)................... 学习初衷:作为一名财务打杂工,对财务岗位大多数繁冗低效无意义的工作深 ...

  8. 日常办公会用到的python模块-用 Python 自动化办公能做到哪些有趣或有用的事情?...

    所有需要重复做两次的事情,都可以用程序代替我来完成. 场景1: 微信上处理的事情有很多都是重复的,又经常容易被这些琐事打断.于是我在 Python 程序里设定了一些关键词和相应的自动回复: /> ...

  9. python自动化办公都能做什么-用 Python 自动化办公能做到哪些有趣或有用的事情?...

    首先,很感谢党,感谢政府,感谢麻瓜编程,能在有幸之年认识一帮让我膜拜的大佬(咳咳,有点跑题)................... 学习初衷:作为一名财务打杂工,对财务岗位大多数繁冗低效无意义的工作深 ...

  10. python自动化办公要学多久-用 Python 自动化办公能做到哪些有趣或有用的事情?...

    所有需要重复做两次的事情,都可以用程序代替我来完成. 场景1: 微信上处理的事情有很多都是重复的,又经常容易被这些琐事打断.于是我在 Python 程序里设定了一些关键词和相应的自动回复: /> ...

最新文章

  1. undefined symbol: sqlite3_open_v2
  2. 【数据结构与算法】之深入解析“验证二叉搜索树”的求解思路与算法示例
  3. 安装 sql server 2005 com+ 目录要求警告 解决方案
  4. aws lambda_Express.js和AWS Lambda —无服务器的爱情故事
  5. pythonfor循环输入_Python之for循环的使用
  6. linux下编程输入密码不回显
  7. (四)伪分布式下jdk1.6+Hadoop1.2.1+HBase0.94+Eclipse下运行wordCount例子
  8. (最新版 易卷)自动阅卷系统|自动阅卷机|网上阅卷系统
  9. comsol 超声声场模拟_[转载]Comsol Multiphysics 声场仿真模块整体介绍
  10. 数据结构之线性表的链式存储结构(C语言)
  11. 重新安装百度网盘,报“您的电脑已安装版本更高的百度网盘客户端”对话框,无法安装
  12. mysql分组聚合compute_SQLServer之Compute/ComputeBy实现数据汇总
  13. 基于FPGA的脉冲压缩设计(Matlab+vivado)
  14. python显示表格_python显示表格
  15. 谁说NTFS不支持UEFI启动的?启动U盘放不了超过4G的文件怎么办?Server2016 Win10 U盘UEFI启动制作方法...
  16. 【iOS】录音和音频合成
  17. 什么是Perl语言?
  18. VMware Workstation Pro 16下载地址及key
  19. 【优化调度】粒子群算法求解水火电调度优化问题【含Matlab源码 1181期】
  20. android按钮输出音频,android – 如何点击按钮播放声音

热门文章

  1. 《OpenGL超级宝典第五版》Windows + VS2019配置
  2. 几何画板椭圆九种画法_椭圆的标准方程课堂(几何画板动画版).ppt
  3. matlab——knnsearch用法介绍
  4. UNIX环境高级编程学习之路
  5. JCreator 使用技巧-1
  6. win10搭建无盘服务器配置,关于今天搞定网吧无盘Win10x64一包多配置到底的详细讲解 By 原来我不帅...
  7. 广电光猫超级管理员账号及光猫改桥接模式教程
  8. 无法连接网络的解决办法
  9. 极智AI | 量化实现分享一:详解 min-max 对称量化算法实现
  10. 老罗Android开发视频教程