python自动化办公实例展示_python自动化办公?学这些就够用了

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

1240

这可能是很多非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飞起来!

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

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

ppt自动化

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

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

1240

1240

word自动化

python操作Word的库:

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

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

textract、import textract:它同时兼顾“doc”和“docx”,但安装过程需要一些依赖。

你可以批量的用python生成word文件,推荐使用docx,不需要会太多。

1240

1240

邮件处理

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

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

文件批量处理

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

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

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

1240

方法

作用

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等解析库。

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

其它

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

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

1240

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/507387.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux编程基础 8.3:I/O多路转接服务器

1 简介 为进一步提升服务器效率,人们提出了一种被称为I/O多路转接的模型。其中“多路”指代连接到服务器的多个客户端程序,而“转接”则是指在服务器主线与各分支之间设置一个“岗位”,由该岗位实现监控多路连接中数据状态的功能&#xff0c…

handler原子锁_多线程编程之原子锁

在《多线程编程之数据访问互斥》一文中简单介绍了原子锁,这里再详细说一下原子锁的概念和用途。(1)简单数据操作如果在一个多线程环境下对某个变量进行简单数学运算或者逻辑运算,那么就应该使用原子锁操作。因为,使用临界区、互斥量等线程互斥…

python统计中文字符的个数_python统计中文字符数量的两种方法

方法一: def str_count(str): 找出字符串中的中英文、空格、数字、标点符号个数 count_en count_dg count_sp count_zh count_pu 0 for s in str: # 英文 if s in string.ascii_letters: count_en 1 # 数字 elif s.isdigit(): count_dg 1 # 空格 elif s.issp…

测井储层参数预测+人工智能方法

1 问题描述 测井储层参数预测 地层泥质含量;地层孔隙度(POR);含水饱和度(SW);渗透率(PERM)。 输入:声波时差(AC)、补偿中子&#x…

php spry文本域_Spry框架及验证构件

图9-71Spry框架原理虽然这些文件存放在服务器上,但实际上是被加载到浏览器中运行的。框架的用户将所有需要的文件链接到HTML文档中,以使用不同的组件,来获得更丰富的用户体验。Spry框架是和设计人员紧密相关的,因此框架中的每个元…

网络系统安全课程--目录

本系列教程以《网络与系统安全》为基础,希望在大家的帮助下,逐步完善网络与系统安全研究生课程。 1 经典攻击分析 1.1 中间人攻击 1.2 源替换攻击 1.3 消息重放攻击 1.4 平行会话攻击 1.5 反射攻击 1.6 交错攻击 1.7 类型缺陷攻击 1.8 身份标识省略导致…

windows 安装openssh服务端_Git神器| SourceTree安装使用教程

SourceTree 是 Windows 和Mac OS X 下免费的Git客户端管理工具。支持创建、克隆、提交、push、pull 和合并等操作。一、sourcetree的安装1. 下载sourcetree下载链接:Sourcetree | Free Git GUI for Mac and Windows2. 安装sourcetree点击安装,第一个创建…

c语言小学生四则运算出题_软件工程第一次作业,小学生四则运算的出题程序...

一、背景阿超有个儿子上小学二年级,老师每天让家长给孩子出30道加减法题,虽然不多,但是每天都做也算是个负担,阿超作为一个老牌程序员当然想用计算机来解决这个小问题,目前对于这个问题对于任何语言都不是问题&#xf…

中国大学生计算机设计大赛--软件应用与开发类--经验总结

1 大赛介绍 中国大学生计算机设计大赛是我国高校面向本科生最早的赛事之一,自2008年开赛至2019年,一直由教育部高校与计算机相关教指委等或独立或联合主办。此赛目前是全国普通高校大学生竞赛排行榜榜单赛事之一。 我们参加了很多届大赛,在2…

python如何使用ppip安装xlwt_Python-xlwt库的基本使用

安装xlwt库 pip install xlwt 基本使用 ①创建工作簿 wa xlwt.Workbook() ②添加工作表 添加“class”工作表 b wa.add_sheet(class) ③向工作表写入数据 注释:(0,0,姓名)(行、列、内容)第0行的第0个也就是excel中的A1,(0,1)就是B1..... b.write(0,0,姓…

网络与系统安全1.1 中间人攻击

1 Diffie-Hellman密钥交换过程 2 中间人攻击过程

tomcat启动占了12g_tomcat服务为何报内存相关错误??

本帖最后由 linux_love 于 2014-9-19 11:46 编辑多谢各位英雄支持,这个问题困扰我N久了,昨天终于让我给拿下了,在Linux下有个CommitLimit 用于限制系统应用使用的内存资源,#grep -i commit /proc/meminfoCommitLimit: 20389524…

python调用键盘_使用 Python 控制自己的电脑和键盘是一种什么样的体验?

可能有时候你需要在电脑做一些重复的点击或者提交表单等操作,如果能通过 Python 预先写好相关的操作指令,让它帮你操作,然后你自己爱干嘛干嘛去,有点 “按键精灵” 的意思,是不是感觉有点爽呢? 那么如何使用…

网络与系统安全4.1 基于随机搜索的黑盒对抗攻击方法

1 摘要 神经网络模型容易受到对抗样本的攻击,根据攻击者是否能获取到模型内部参数可以把攻击类型分为白盒攻击和黑盒攻击。 白盒攻击比较常见,但其对目标模型的威胁程度要远低于黑盒攻击。传统黑盒攻击往往都是基于梯度实现的,并且具有查询…

mybatis 二级缓存失效_二级缓存updateBatchById失效

### 当前使用版本(必须填写清楚,否则不予处理)3.3.0### 该问题是怎么引起的?**([最新版](https://search.maven.org/search?qg:com.baomidou%20a:mybatis-*)上已修复的会直接**close**掉)**### 重现步骤**字典mapper**CacheNamespacepublic interface D…

centos 安装jdk_centos7配置jdk

一、查看centos7是否有自带jdk查看是否安装过java rpm -qa | grep java 如果是centos 一般会自带两个openjdk rpm -e --nodeps 要卸载的包 (包通过上面的指令可以获取到)] 将显示java的包全都卸载 命令: rpm -e --nodeps 要卸载的包二、创建/opt/app目录,用于安装JD…

隐私计算 1 隐私计算的定义与背景

1 隐私计算的定义 隐私计算:在保证数据提供方不泄露原始数据的前提下,对数据进行分析计算的一系列技术,保障数据在流通和融合过程中“可用不可见”。 隐私计算涉及到的学科: 密码学;统计学;计算机体系结…

php object 对象不存在。增加对象_PHP核心

1、单例模式单例模式三要素&#xff1a;拥有一个构造函数&#xff0c;并且为private拥有一个静态成员变量来保持类的实例拥有一个访问这个实例的静态方法<?php //Instan.php 单例类class Instan{static public $instance null;private function __construct(){var_dump(…

数据库查询求小于_SQL学习笔记(二)简单查询

本篇主要学习如何通过简单查询获取想要的数据。从零学会SQL&#xff1a;简单查询​www.zhihu.com基本的查询语句从数据库中查找数据时要使用select子句&#xff0c;select子句是sql中使用最多、最基本的子句。子句是sql语句的组成要素&#xff0c;是以某一个关键字作为开始的语…

隐私计算 2.1秘密共享--问题模型及定义

1 秘密共享问题模型 1.1 富翁和三个儿子的故事 问题&#xff1a; 富翁想在自己的三个儿子中找一个最聪明的来继承自己的遗产&#xff0c;在保护好财富的同时&#xff0c;让其他两个人也参与进来&#xff0c;使得兄弟间和睦相处&#xff0c;家庭和谐。 大儿子的方案&#xff…