微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

6个Python办公黑科技,助你提升工作效率

这篇文章主要介绍了Python办公黑科技,文中有非常详细的代码示例,对正在学习python的小伙伴们有非常好的帮助,需要的朋友可以参考下

目录

一、解析PDF(简历内推)

二、发送邮件

三、操作execl

1. 关联公式:Vlookup

2. 数据透视表

3. 对比两列差异

4. 去除重复值

5. 缺失值处理

6. 多条件筛选

7. 模糊筛选数据

8. 分类汇总

9. 条件计算

10. 删除数据间的空格

四、画图分析

五、解析word(docx、doc)

六、计算器

总结

一、解析PDF(简历内推)

应用场景:简历内推(解析内容包括不限于姓名、邮箱、电话号码、学历等信息)

输入:要解析的文件路径

输出:需要解析的内容(点我主页,详见历史文章

环境准备:python 3.6 、mac(下文中doc转docx是mac写法,windows更简单,导入win32的包即可)

依赖包:

# encoding: utf-8 import os, sys from pdfminer.pdfparser import PDFParser from pdfminer.pdfdocument import PDFDocument from pdfminer.pdfpage import pdfpage from pdfminer.pdfinterp import PDFResourceManager from pdfminer.pdfinterp import pdfpageInterpreter from pdfminer.layout import LAParams from pdfminer.converter import pdfpageAggregator

二、发送邮件

有几个模块用于访问互联网以及处理网络通信协议。其中最简单的两个是用于处理从 urls 接收的数据的 urllib.request 以及用于发送电子邮件的 smtplib:

import smtplib smtpObj = smtplib.SMTP( [host [, port [, local_hostname]]] )

参数说明:

host: SMTP 服务器主机。 你可以指定主机的ip地址或者域名如: runoob.com,这个是可选参数。

port: 如果你提供了 host 参数, 你需要指定 SMTP 服务使用的端口号,一般情况下 SMTP 端口号为25。

local_hostname: 如果 SMTP 在你的本机上,你只需要指定服务器地址为 localhost 即可。

Python SMTP 对象使用 sendmail 方法发送邮件,语法如下:

SMTP.sendmail(from_addr, to_addrs, msg[, mail_options, rcpt_options])

参数说明:

from_addr: 邮件发送者地址。

to_addrs: 字符串列表,邮件发送地址。

msg: 发送消息

案例:

#!/usr/bin/python# -*- coding: UTF-8 -*- import smtplibfrom email.mime.text import MIMETextfrom email.header import Header sender = 'from@runoob.com' # 西红柿微:ZPYDWXYreceivers = ['1221121@qq.com'] # 接收邮件,可设置为你的QQ邮箱或者其他邮箱 # 三个参数:第一个为文本内容,第二个 plain 设置文本格式,第三个 utf-8 设置编码message = MIMEText('Python 邮件发送测试...', 'plain', 'utf-8')message['From'] = Header("不吃西红柿", 'utf-8') # 发送者message['To'] = Header("测试", 'utf-8') # 接收者 subject = 'Python SMTP 邮件测试'message['Subject'] = Header(subject, 'utf-8') try: smtpObj = smtplib.SMTP('localhost') smtpObj.sendmail(sender, receivers, message.as_string()) print "邮件发送成功"except smtplib.SMTPException: print "Error: 无法发送邮件"

三、操作execl

1. 关联公式:Vlookup

vlookup是excel几乎最常用的公式,一般用于两个表的关联查询等。所以我先把这张表分为两个表。

#查看订单明细号是否重复,结果是没。 df1["订单明细号"].duplicated().value_counts() df2["订单明细号"].duplicated().value_counts() df_c=pd.merge(df1,df2,on="订单明细号",how="left")

2. 数据透视表

需求:想知道每个地区的业务员分别赚取的利润总和与利润平均数。

pd.pivot_table(sale,index="地区名称",columns="业务员名称",values="利润",aggfunc=[np.sum,np.mean])

3. 对比两列差异

需求:比较订单明细号与订单明细号2的差异并显示出来。

sale["订单明细号2"]=sale["订单明细号"] #在订单明细号2里前10个都+1. sale["订单明细号2"][1:10]=sale["订单明细号2"][1:10]+1 #差异输出 result=sale.loc[sale["订单明细号"].isin(sale["订单明细号2"])==False]

4. 去除重复值

需求:去除业务员编码的重复值

sale.drop_duplicates("业务员编码",inplace=True)

5. 缺失值处理

#用0填充缺失值 sale["客户名称"]=sale["客户名称"].fillna(0) #删除有客户编码缺失值的行 sale.dropna(subset=["客户编码"])

6. 多条件筛选

需求:想知道业务员张爱,在北京区域卖的商品订单金额大于6000的信息。

sale.loc[(sale["地区名称"]=="北京")&(sale["业务员名称"]=="张爱")&(sale["订单金额"]>5000)]

7. 模糊筛选数据

需求:筛选存货名称含有"三星"或则含有"索尼"的信息。

sale.loc[sale["存货名称"].str.contains("三星|索尼")]

标签:JavaScript微信微信的版本号版本号语义化

-->上一篇:用python找出那些被“标记”的照片下一篇:python通过PyQt5实现登录界面的示例代码 热门搜索

提升工作效率工具 

效率提升 

工作效率 

可以提高工作效率 

提升网络效率 

相关文章

6个Python办公黑科技,助你提升工作效率

2021-09-10阅读(6527)评论(0)推荐()

这篇文章主要介绍了Python办公黑科技,文中有非常详细的代码示例,对正在学习python的小伙伴们有非常好的帮助,需要的朋友可以参考下

分享几个快速提升工作效率的小工具(Listary等)

2021-10-05阅读(4654)评论(0)推荐()

这篇文章主要介绍了分享几个快速提升工作效率的小工具(Listary等),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

改善你的jQuery的25个步骤 千倍级效率提升

2021-10-10阅读(8045)评论(0)推荐()

改善你的jQuery的25个步骤 -- 从头看完会有无数收获,千倍级效率提升

怎样提高photoshop(ps)工作效率

2021-10-01阅读(7315)评论(0)推荐()

怎样提高photoshop工作效率呢?简单的五个步骤让你工作方便快捷

iPhone中可以帮你提升工作学习效率的功能

2021-10-27阅读(6279)评论(0)推荐()

iPhone中有一些功能可以帮助我们在生活中提升工作学习效率,非常的实用方便,一起来了解一下吧

六个窍门助你提高Python运行效率

2021-11-09阅读(5244)评论(0)推荐()

这篇文章主要介绍了六个窍门助你提高Python运行效率,本文讲解了关键代码使用外部功能包、在排序时使用键、针对循环的优化、使用较新的Python版本等优化窍门,...

13个Pandas实用技巧,助你提高开发效率

2021-11-17阅读(8725)评论(0)推荐()

这篇文章主要介绍了13个Pandas实用技巧,帮助你提高python开发的效率,感兴趣的朋友可以了解下

取消

有人回复邮件通知

提交评论

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐