知乎上有人问:使用Python进行办公自动化需要学习哪些知识?
这可能是很多非IT专业人士面临的困惑。 他们想在工作中使用Python,但不知道如何开始? Python在自动化办公领域越来越流行,批处理对于加班的人来说简直是福音。
前段时间,我专门在知乎上举办了一场关于【python办公自动化】学习之路的Live,讲了python基础、xlwings、docx、pptx、爬虫、数据分析等。
实时地址:
自动化办公无非就是excel、ppt、word、email、文件处理、数据分析处理、爬虫等,这次我就来复习一下python自动化办公的知识点。
下面我们就来一一详细解释一下。
蟒蛇基础知识
能够做到这一点的前提是你会使用Python。 至少,你必须熟悉基本语法并能够编写小脚本。
对于Python语法要求,你可以参考Python基础教程来查看自己需要学习什么,找到免费的视频教程进行学习办公自动化软件学习,然后多练习编码。 如果习惯看书的话,可以买一本python的入门书来参考。
语法的主要内容
基本数据类型不可变数据(三):Number、String、Tuple
可变数据(3):List、Dictionary、Set
运算符 算术运算符、逻辑运算符、赋值运算符、比较运算符、按位运算符...
数值类型 整型(Int)、浮点型(float)、复数(complex)
条件控制语句 if...elif...else 语句
循环语句 while 语句、for 语句
函数def定义了函数、函数调用、参数传递、匿名函数……
迭代迭代过程、迭代器、生成器、生成器表达式
文件操作open()函数,read、readline、readlines、write...方法
os 模块处理系统文件和目录
Module模块导入、常用标准模块、常用第三方库
错误和异常 try/ except 语句
面向对象:简单掌握面向对象的概念
语法是关键。 在学习其他工具库之前,必须先了解Python编程的基本概念。
否则会非常痛苦。
卓越自动化
其实所有的办公一族都可以使用VBA来解决自动化问题,只是很多人可能不知道如何使用。
Python有很多可用于excel的第三方库,例如xlwings、xlsxwriter、xlrd、xlwt、pandas、xlsxwriter、win32com、xlutils等。
这些库可以方便地对excel文件进行添加、删除、重写、格式化等操作。 当然,不建议全部尝试,因为这样会花费太多时间。 使用xlwings和pandas就足够了,基本上可以解决excel自动化的所有问题。
xlwing不仅可以读写excel,还可以进行格式调整和VBA操作。 它非常强大且易于使用。
之前写过xlwings的入门教程:xlwings,让excel飞起来!
以及xlrd和xlwt的使用:手把手教你使用Python批量读写excel文件
当然最好看一下官网教程:
Pandas是大家都熟悉的数据处理工具。 它还支持Excel的读写,界面友好。 这些事会晚一些讨论。
如果你对用Python自动化Excel处理感兴趣,你还可以购买专门的教材。
PPT自动化
当然,python支持ppt的自动化处理。 主要的库包括pywin32com和pptx,可以创建和修改ppt文件。
推荐使用pptx库,这是目前主流的ppt处理库。
学习网站:
文字自动化
用于操作Word的Python库:
学习网站:
邮件处理
Python 处理电子邮件也极其方便。 smtplib、imaplib、email这三个库配合使用,实现了编写、发送、接收、阅读邮件等一系列自动化操作,省时省力。
我写了一个发送邮件的教程,大家可以用它来个人测试:干货信息| 解放双手,使用Python自动发送邮件
看了很多其他教程,还有各种问题和bug需要不断修正,所以可以先运行上面的代码。
文件批处理
文件处理包括批量修改或创建文件名、批量生成文档、批量修改路径等重复操作。 如果手动一项一项的做的话,真的很累。
Python在处理批量操作方面有得天独厚的优势,数千个文件的修改可能只需要几秒钟的时间。
os是Python文件操作的库,可以对计算机上的文件进行添加、删除、修改和检查。
学习网站:
方法功能
os.chdir(path) 更改当前工作目录
os.getcwd() 返回当前工作目录
os.listdir() 返回路径指定的文件夹中包含的文件或文件夹的名称列表
os.makedirs(path[, mode]) 创建一个名为path的文件夹
os.remove(path) 删除路径为path的文件......
数据处理与分析
我是做数据分析工作的,而python基本上是主要工具办公自动化软件学习,所以这无疑是python办公自动化中最有价值的部分。
数据处理的主要库包括:pandas、numpy、matplotlib、sklearn...
pandas 是一个不断改进的 Python 数据科学库。 它的数据结构非常适合数据处理,pandas融合了大量的分析函数方法,以及常用的统计模型和可视化处理。
如果使用python进行数据分析,数据预处理过程中几乎90%的工作都需要使用pandas来完成。
在一些招聘分析师的公司笔试题中,已经将pandas作为必考工具,所以如果你想成为一名数据分析师,请努力学习使用pandas。
Numpy是Python的数值计算库,包括pandas在内的许多分析库都是基于numpy构建的。
Numpy 的核心功能包括:
Numpy 对于数值计算尤其重要,因为它可以有效地处理大型数据数组。 这是因为:
matplotlib和seaborn是Python中主要的可视化工具。 建议大家学习一下。 数据呈现和数据分析同样重要。
sklearn和keras,sklearn是一个Python机器学习库,涵盖了大部分机器学习模型。 Keras 是一个深度学习库,包括高效的数值库 Theano 和 TensorFlow。
这些都是大家熟悉的神库,强烈推荐学习。
之前写过很多关于Python数据分析处理的答案和文章,这里不再赘述。
好但不坏| 您如何提出数据分析的想法? 如何用Python系统学习matplotlib、numpy、scipy、pandas?Python数据科学初学者完整教程
自动化爬虫
相信爬虫是大家最感兴趣的。Python爬虫有很多实现库,比如urllib、requests、scrapy等,还有xpath、beautifulsoup等解析库。
爬虫上手容易,但精通却很难,所以初学者可以尝试写一些简单的爬虫,比如豆瓣、知乎、微博等。
案例都给你准备好了:如何入门Python爬虫使用请求爬取拉狗网python求职数据实践| 从0到1,教你如何使用Python爬取整个天气网站
建议大家学习requests和bs4来入门爬虫。 我们提供相应的中文学习网站:
其他
其他不太常用的自动化办公库,比如处理PDF、图片、视频和音频等,这里不再过多介绍。 如果您有兴趣,可以在本文末尾留言。 你使用过哪些令人难以置信的Python库以及你解决了哪些问题?