书名:openGauss数据库开发实战
ISBN:978-7-115-64786-3
本书由人民邮电出版社发行数字版。版权所有,侵权必究。
您购买的人民邮电出版社电子书仅供您个人使用,未经授权,不得以任何方式复制和传播本书内容。
我们愿意相信读者具有这样的良知和觉悟,与我们共同保护知识产权。
如果购买者有侵权行为,我们可能对该用户实施包括但不限于关闭该帐号等维权措施,并可能追究法律责任。
著 杨永刚
责任编辑 秦 健
人民邮电出版社出版发行 北京市丰台区成寿寺路11号
邮编 100164 电子邮件 315@ptpress.com.cn
网址 http://www.ptpress.com.cn
读者服务热线:(010)81055410
反盗版热线:(010)81055315
本书对Python在职场办公领域的应用进行了系统梳理与介绍,讲解了使用ChatGPT进行Python代码编写的方法。全书共12章,第1~7章主要围绕与Python办公自动化相关的基础知识及ChatGPT入门知识展开;第8~12章包括文件操作自动化,Word、PPT办公自动化,Excel办公自动化,PDF文档操作自动化和邮件发送,数据分析与可视化等内容。本书提供了丰富的案例,并配有相关资源,以增强读者的实战能力。
本书内容易学易懂,适合追求高效工作、对办公自动化感兴趣的职场人士阅读。
作为人工智能、云计算、大数据、物联网等热门技术背后的主要应用语言之一,Python这些年得到迅猛普及。
Python的代码很简洁,可加载许多优秀的模块快速实现复杂的功能。完成一项同样的工作,C语言可能要1000行代码,Java可能要100行代码,而Python可能只要10行代码。
因此,各大培训机构纷纷推出各种Python培训课程, 招聘网站上要求会Python的岗位比比皆是,教育部教育考试院在全国计算机等级考试二级考试科目中加入了Python语言程序设计……可以预见,未来会有更多的人学习Python,使用Python编程可能就像现在使用Office软件办公般普遍。
但是,很多人在学习Python的过程中遇到了各种困难。
有些人工作繁忙,虽然想学习用Python实现办公自动化,却总是被各种琐碎的事打断,有心无力。
有些人学习Python没有目标和计划,不知道自己该往哪个方向发展,导致“三天打鱼,两天晒网”,最后只能“从入门到放弃”。
有些人虽然一直在学,但是脑海中没有建立Python办公自动化的知识体系,很难真正将所学知识用到实际工作中。
大部分人学习Python遇到的问题,我也遇到过。于是我就想,有没有办法帮助大家渡过这个难关,从而享受Python带来的便捷与美好呢?值得一提的是,2023年,成熟的人工智能大语言模型应用问世并迅速风靡全球,经验证,它能帮助我们更高效地学习Python。
在长达20年的职场生涯中,我积累了一些高效学习的经验,发现无论是编程、写作还是沟通,都有一些共通的部分,而这些共通的部分就是高效学习的基础逻辑。
于是,我把高效学习的思路融进了本书。希望通过思维导图、支持碎片化学习等方式帮助读者快速搭建起学习Python办公自动化的知识框架,也希望读者拥有一种轻松学习的心态。
简而言之,希望本书能让读者在学习Python办公自动化相关知识的过程中,感受到广度、深度和温度,进而掌握相关技能。
本书从结构上可以分为两部分,前7章为Python和ChatGPT的基础知识,后5章为几个不同的应用方向,读者可以有选择地进行学习。
本书的每一章都采用循序渐进的讲解方法,初学者可以在短时间内入门Python办公自动化。书中提供的大量案例,可以帮助初学者理解Python办公自动化中的一些疑点和难点。
推荐职场人士根据应用场景重点学习办公自动化(第8章~第11章)和数据分析与可视化(第12章),学会利用Python操作Word、Excel等办公软件,工作起来如虎添翼。
本书提供了众多的代码和丰富的案例*,这些案例都是从实际项目演变而来的。通过举一反三,读者可快速将案例经验变为实战经验。
在编排上,本书内容主要由入门知识、代码演示、实战案例三大部分组成。
入门知识:通过图解、比喻、类比等方式循序渐进地讲解知识点。
代码演示:每一个知识点都配有代码进行解释,并展示代码执行结果,方便读者对照学习。
实战案例:通过对案例的讲解,帮助读者将所学知识快速应用到实际工作中,且所有案例涉及的知识点都在前7章的基础知识部分讲解过。
我提倡利用碎片化时间学习本书,比如:早晨,用15分钟学习概念;中午,用30分钟进行巩固;晚上,用1小时学习编写代码。本书在每一章的开始都列出学习需要的时间、目标知识点和学习要求,照此计划执行,学习完本书内容只需要约21天。
建议读者能够对每章的知识点进行复盘,并且形成可以交付的成果,如代码、思维导图、PPT、视频、文章等。这样做的好处是,可以快速搭建Python办公自动化的知识框架,同时有助于理解高效学习的精髓。
读者可以加入“Python办公自动化实战”QQ群(群号:865358767),获取完整的配套资源,也可以在群里交流和互相学习,快速解决实际问题。读者还可以关注我的微信公众号“Python有温度”,学习编程知识及获取帮助。
最后,祝大家在学习Python办公自动化的道路上一帆风顺!
感谢我的家人,如果没有他们的悉心照顾和鼓励,我不可能完成本书。
感谢人民邮电出版社的编辑贾鸿飞老师,他的鼓励和帮助引导我顺利地完成了写作。
最后,谨以此书,献给我远在天国的父亲。您永远都是我的榜样。
杨永刚
2023年12月
*注:本书所有实例用到的数据均为虚拟数据,仅作为演示示例使用,与任何现实数据无对应关系。
在职场办公中用好工具,往往可以事半功倍。Python在办公中的应用场景非常多,第1章主要就Python的办公自动化应用、Python的开发环境搭建、相关开发工具VS Code编辑器等做了简单介绍,并帮读者着手写出第一个Python程序。
本章的目标知识点与学习要求如表1-1所示。
表1-1 目标知识点与学习要求
时间 |
目标知识点 |
学习要求 |
---|---|---|
1天 |
● Python办公自动化应用场景 ● 安装Python和创建开发环境 ● 安装VS Code编辑器 |
● 了解和熟悉Python在办公中的应用场景 ● 用VS Code编写第一个程序 ● 编写一个Python+Excel的办公自动化程序 ● 亲自写一遍代码 |
为什么要用Python实现办公自动化?
在回答这个问题之前,先来看看什么是办公自动化。
办公自动化(Office Automation,OA)是将现代化办公和计算机技术结合起来的一种办公方式。办公自动化没有统一的定义,一般来说,采用各种新技术、新工艺、新设备办公,都属于办公自动化的范畴。办公自动化常用的软件有Word、Excel、PPT等。
那么,日常办公中的什么任务可以自动化?
比如有一家大型企业,计划2022年招聘各类技术和管理人员500名,招聘方式有校园招聘、社会招聘、猎头公司推荐以及内推等。招聘会涉及各种各样的文档,典型的有求职者的个人简历、报名人员的信息汇总表、面试人员的成绩排序表、人员的录用通知单以及劳动合同等。
要整理这么多文档,该如何做呢?如果有一套人力资源管理系统,人力资源管理者可能动动鼠标就能轻松搞定。但如果没有,该怎么办呢?
如果只有10份简历,人力资源管理者可以通过手动操作,逐一打开简历,把关键信息找到,然后复制粘贴到报名人员的信息汇总表中。但是如果有1000份简历呢?
让烦琐的、重复的工作自动化,是引入程序开发的一个重要理由。Python简单易懂,且拥有强大的第三方库,我们能想到的功能,几乎都能在其中找到相应的模块来实现。我们只需要了解一些基础的Python知识以及与办公自动化相关的库,就能快速上手。
当我们发现工作变得重复的时候,就可以考虑通过设计程序来解决。
Python办公自动化的主要应用及其相应的库如图1-1所示。
图1-1 Python办公自动化应用及其相应的库
接下来一一进行介绍。
工作中,人力资源或综合岗位经常需要整理员工信息、物品信息等,比如创建员工姓名文件夹、重命名文件、复制文件等。当需要整理的信息很多时,进行任何小的修改都会耗时耗力,无形中增加了很多工作量。
通过Python和文件交互,只需少许代码,就能轻松搞定工作。
很多人制作简历、汇报材料少不了用Word和PPT。使用python-docx库对大量的简历进行筛选,不必一份份打开看,在很短时间内就能找到需要的简历。
商贸公司每天都需要向很多家客户发送当天的产品报价信息,也就意味着每天都要重复修改价格和时间。作为资料员,使用docxtpl库很快就能批量完成,不用一个个打开文档修改。
人力资源、审计、财务、物流、生产、销售等岗位经常用到Excel。Python提供了openpyxl、xlwings等数量众多的库,根据场景选择适合的库可快速完成Excel相关工作。
在工作中,有时会面临从上百份PDF资料中找出关键字并生成明细,以及对多个PDF文档拆分或合并、加密传输的情况。使用Python能快速解决这些问题。另外,可以使用smtplib、email等库,让邮件发送自动化变得非常简单。
在大数据时代,人们对数据的价值越来越重视。数据可以帮助企业领导进行决策、发现业务蓝海、提高用户的忠诚度等,数据分析和挖掘技术得到了日益广泛的应用。Python在数据分析方面有名的工具库有NumPy、Pandas、Matplotlib等。其中,NumPy提供了许多数学计算的数据结构和方法,较Python自带的列表效率高很多;Pandas是基于NumPy实现的数据处理工具,提供了大量数据统计、分析方面的模型和方法;Matplotlib是Python中最基础的绘图工具,功能丰富,定制性强,可满足日常各类绘图需求。
本书所有案例均可在Windows 7和Windows 10操作系统下运行,使用的Python版本为3.8.2,开发工具采用了VS Code编辑器。
在Python的官网上可以下载Python 3.8.2的安装包。在官网的下载页面中,选择对应的版本号,本书中演示代码所用的Python是在Windows系统中使用的,所以选择页面中的Windows x86-64 executable installer类型。
双击下载好的安装文件Python 3.8.2 (64-bit) Setup,启动安装程序。记住勾选下方的“Add Python 3.8 to PATH”复选框,并单击“Customize installation”链接,如图1-2所示。
图1-2 Python安装配置界面(1)
在Optional Features界面中,勾选全部复选框,单击“Next”按钮,如图1-3所示。
图1-3 Python安装配置界面(2)
在Advanced Options界面中,勾选第2、3、4个复选框,然后选择安装路径,单击“Install”按钮,等待安装完成,如图1-4所示。
如果安装界面中出现“Successful”字样,说明Python安装成功。
接下来进行测试。按Win+R组合键,在运行界面输入命令“cmd”,按Enter键进入命令提示符窗口,执行命令“python”,若显示结果如图1-5所示,则说明安装成功。
图1-4 Python安装配置界面
图1-5 安装成功
IDLE是Python软件包自带的集成开发环境,初学者可以利用它方便地编写、运行、测试和调试Python程序。
安装好Python后,IDLE是默认安装好的,可以单击菜单“开始”→“Python 3.8”→“IDLE(Python 3.8 64-bit)”启动,如图1-6所示。
图1-6 启动IDLE
启动IDLE后,可以在IDLE内执行Python命令,利用IDLE可以与Python进行命令行互动。输入print("hello Python"),按Enter键就可以看到输出效果,如图1-7所示。
图1-7 IDLE下的代码输出效果
Visual Studio Code(简称VS Code)是一款免费的、开源的现代化轻量级代码编辑器,支持Windows、macOS和Linux系统。其拥有丰富的插件生态系统,可通过安装插件使其支持C++、C#、Python、PHP等30多种语言。
本书主要基于VS Code编辑器进行讲解,读者可以使用VS Code编辑器高效、快捷地编写Python代码。
在VS Code官网上,根据自己的操作系统版本下载相应的VS Code版本。本书使用的是适用于Windows系统的1.45.1版本。
下载VSCodeSetup-x64-1.45.1.exe文件后,双击直接运行。然后单击“下一步”按钮就可以完成安装。如图1-8所示,可以勾选全部复选框。
图1-8 VS Code的安装
VS Code的启动界面如图1-9所示。
图1-9 VS Code的启动界面
VS Code的界面默认是英文版本的,如果不习惯,可以设置成中文界面。在VS Code中设置中文界面,需要安装插件。
安装插件的界面如图1-10所示,单击左侧边栏中线框标注处的按钮,然后在搜索框中输入“chinese”,在出现的选项中选择“Chinese (Simplified) Language Pack for Visual Studio Code”,单击“Install”按钮进行安装。安装完语言包,需要重新启动VS Code才可以看到中文界面。
图1-10 为VS Code 安装中文插件
为了能在VS Code中正常运行Python代码,需要安装Python插件。在VS Code界面中单击左侧的扩展按钮,输入“python”,选择微软(Microsoft)的Python插件,单击“安装”按钮进行安装,如图1-11所示。安装完成之后会提示重新启动。安装好这个插件后,就能流畅地开发Python程序了。
图1-11 为VS Code中安装Python插件
在VS Code界面中单击菜单“文件”→“新建文件”,将文件命名为“hello.py”,把新建的文件保存为Python格式。
下列代码演示第一个程序,源代码见code\1\hello.py。
print('hello python')
单击右上角的绿色三角形按钮就可以运行程序,这样就可以在终端看到输出结果,如图1-12所示。
图1-12 第一个程序输出
这里的print()函数是学习Python遇到的第一个内置函数。print()函数的作用是把必要的数据输出到终端设备上,以便查看程序状态、代码运行结果等。
这里根据一些姓名,批量生成以姓名为名称的Excel文件。
在编写第一个操作Excel的程序前,需要导入openpyxl库。使用pip命令可以方便快捷地安装openpyxl库,打开Windows的命令提示符窗口,执行以下命令。
pip install openpyxl
如果在安装过程中遇到问题,请阅读第6章的模块部分。
下列代码演示用Python调用openpyxl库,且根据人员姓名生成对应的Excel文件,源代码见code\1\build_name.py。
1 from openpyxl import Workbook
2 names=["刘一","陈二","张三","李四","王五","赵六","孙七","周八","吴九","郑十"]
3 for i in names:
4 #新建工作簿对象
5 wb = Workbook()
6 filename=f"d:\info\人员信息_{i}.xlsx"
7 #必须保存后,上述操作才能生效。
8 wb.save(filename)
代码执行结果如图1-13所示。其中代码的含义会在后文详细介绍。
通过Python和openpyxl库的强大组合,我们仅仅用了短短的8行代码就给工作带来了便利。这个例子还可以扩展为从文件名中读取人员姓名,感兴趣的读者可以自行尝试。
图1-13 入门程序的执行结果