python自动化办公教程书籍_盘点使用Python进行自动化办公所需要的知识点

知乎上有人提问:用python进行办公自动化都需要学习什么知识呢?

4de28ab06135f6cdd884caa12174bfd6947.png

这可能是很多非IT职场人士面临的困惑,想把python用到工作中,却不知如何下手?python在自动化办公领域越来越受欢迎,批量处理简直是加班族的福音。

自动化办公无非是excel、ppt、word、邮件、文件处理、数据分析处理、爬虫这些,这次就来理一理python自动化办公的那些知识点。

python基础

excel自动化

ppt自动化

word自动化

邮件处理

文件批量处理

数据处理与分析

自动化爬虫

下面一一详解。

python基础

能做这些的前提是会使用Python,最起码要熟悉基本语法,可以编写小脚本。

对于python语法的要求,你可以对照python基础教程的部分查看需要学那些,找个免费视频教程跟着学,然后多敲代码练习。如果习惯看书的话,可以买本python入门书备查。

语法

主要内容

基本数据类型

不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组)

可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)

运算符

算术运算符、逻辑运算符、赋值运算符、比较运算符、位运算符...

数值类型

整型(Int)、浮点型(float)、复数(complex)

条件控制语句

if...elif...else语句

循环语句

while语句、for语句

函数

def定义函数、函数调用、参数传递、匿名函数...

迭代

迭代过程、迭代器、生成器、生成器表达式

文件操作

open()函数、read、readline、readlines、write...方法

os模块

处理系统文件和目录

模块

模块导入、常用标准模块、常用第三方库

错误和异常

try/except语句

面向对象

简单掌握面向对象概念即可

语法是关键,一定要理解python编程的基本概念,再去学其他的工具库。

不然会很痛苦的。

excel自动化

office家族其实都可以用VBA解决自动化的问题,但可能很多人不会用。

python针对excel有很多的第三方库可以用,比如xlwings、xlsxwriter、xlrd、xlwt、pandas、xlsxwriter、win32com、xlutils等等。

这些库可以很方便地实现对excel文件的增删改写、格式修改等,当然并不推荐你全部都去尝试一下,这样时间成本太大了。使用xlwings和pandas这两个就够了,基本能解决excel自动化的所有问题。

xlwing不光可以读写excel,还能进行格式调整、VBA操作,非常强大且易于使用。

之前写过一个xlwings的入门教程:

xlwings,让excel飞起来!

你也可以查询xlwings具体用法(中文总结):

https://www.jianshu.com/p/e21894fc5501

https://www.jianshu.com/p/b534e0d465f7

https://www.jianshu.com/p/de7efe591c12

当然最好是看官网教程:

https://www.xlwings.org/

b5a2895e58a1ec81925de63059b8ec3efd0.jpg

pandas是大家都熟悉的数据处理利器,它也支持excel的读写,接口友好。这个后面会讲到。

如果你对python自动化处理excel很有兴趣,也可以买一本专门的教材来看。

ppt自动化

python当然是支持ppt的自动化处理,主要的库有pywin32com、pptx,可以创建、修改ppt文件。

推荐使用pptx库,目前主流的ppt处理库。

9392dff749fc125be114aa7494169c76051.png

学习网站:

https://python-pptx.readthedocs.io/en/latest/

55ae22c9b53236682714e00486eb398146f.png

word自动化

python操作Word的库:

python-docx、import docx:只对windows平台有效

pypiwin32、import win32com:跨平台,但无法处理doc格式的word文本,doc格式不是基于xml的

textract、import textract:它同时兼顾“doc”和“docx”,但安装过程需要一些依赖。你可以批量的用python生成word文件,推荐使用docx,不需要会太多。

f8d4dee2ea25d0cb6493331f74377fc6b69.png

学习网站:

https://python-docx.readthedocs.io/en/latest/

2d59a4200bef7f479bb40abf702ed091467.jpg

邮件处理

python处理邮件也是极其便利的,smtplib、imaplib、email三个库配合使用,实现邮件编写、发送、接收、读取等一系列自动化操作,省时省力。

看了其他很多教程都有各种各样的问题,需要不断改bug,所以这个大家先可以跑跑上面的代码。

文件批量处理

文件处理包括批量修改或创建文件名、批量生成文档、批量修改路径等等重复性操作。如果一个个手工操作,那真的心累。

python在处理批量操作有得天独厚的优势,成千上万的文件修改可能只需几秒的时间。

os是python文件操作的库,可以实现对电脑上文件的增删改查。

2bb1994eb38749faea609a7a0efef9efb48.png

学习网站:

https://www.runoob.com/python3/python3-os-file-methods.html

https://www.liaoxuefeng.com/wiki/1016959663602400/1017606916795776

方法

作用

os.chdir(path)

改变当前工作目录

os.getcwd()

返回当前工作目录

os.listdir()

返回path指定的文件夹包含的文件或文件夹的名字的列表

os.makedirs(path[, mode])

创建一个名为path的文件夹

os.remove(path)

删除路径为path的文件

...

...

数据处理和分析

我就是做数据分析工作的,基本也是python作为主要工具,所以这一块毋庸置疑是python自动化办公最有价值的部分。

数据处理的库主要有:pandas、numpy、matplotlib、sklearn...

pandas是一款不断进步的python数据科学库,它的数据结构十分适合做数据处理,并且pandas纳入了大量分析函数方法,以及常用统计学模型、可视化处理。

如果你使用python做数据分析,在数据预处理的过程,几乎九成的工作需要使用pandas完成。

在一些企业招分析师的笔试题中,pandas已经作为必考的工具,所以如果你想要入行数据分析师,请努力学习使用pandas。

numpy是python的数值计算库,包括pandas之类的很多分析库都建立在numpy基础上。

numpy的核心功能包括:

ndarray,一个具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组

用于对整组数据进行快速运算的标准数学函数(无需编写循环)

用于读写磁盘数据的工具以及用于操作内存映射文件的工具

线性代数、随机数生成以及傅里叶变换功能

用于集成由C、C++、Fortran等语言编写的代码的A C API

numpy之于数值计算特别重要是因为它可以高效处理大数组的数据。这是因为:

比起Python的内置序列,numpy数组使用的内存更少

numpy可以在整个数组上执行复杂的计算,而不需要Python的for循环

matplotlib和seaborn是python主要的可视化工具,建议大家都去学学,数据的展现和数据分析同样重要。

sklearn和keras,sklearn是python机器学库,涵盖了大部分机器学习模型。keras是深度学习库,它包含高效的数值库Theano和TensorFlow。

这些是大家耳熟能详的神库,非常推荐去学习。

之前写过很多关于python数据分析处理的回答和文章,这里不再啰嗦了。

自动化爬虫

相信爬虫是大家最感兴趣的,python爬虫有很多的实现库,比如:urllib、requests、scrapy等,以及xpath、beautifulsoup等解析库。

爬虫入门容易,但学精难,所以初学者可以尝试写点简单的爬虫,比如豆瓣、知乎、微博呀。

推荐大家去学习requests、bs4来入门爬虫,提供对应中文学习网站:

https://2.python-requests.org//zh_CN/latest/

https://www.crummy.com/software/BeautifulSoup/bs4/doc.zh/

其它

其它不常用的自动化办公库,像处理pdf、图片、视音频等,这里不做过多介绍。

如果有兴趣可以在本文末留言,你用过哪些逆天的python库,解决了哪些问题?

最后推荐几本python自动化办公入门书:

利用Python进行数据分析(原书第2版)(作者:[美]韦斯.麦金尼)、对比Excel,轻松学习Python数据分析(作者:张俊红)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值