前言
辦公自動(dòng)化是指利用現(xiàn)代化設(shè)備和技術(shù),代替辦公人員的部分手動(dòng)或重復(fù)性業(yè)務(wù)活動(dòng),優(yōu)質(zhì)而高效地處理辦公事務(wù),實(shí)現(xiàn)對(duì)信息的高效利用,進(jìn)而提高工作效率,實(shí)現(xiàn)輔助決策的目的。辦公自動(dòng)化通常包括利用Excel、Word、PowerPoint等工具制作報(bào)表、文稿,以及收發(fā)郵件和處理文件等工作,雖然微軟Office套件提供了編程接口來(lái)實(shí)現(xiàn)辦公自動(dòng)化,但是由于其具有占用資源大等缺點(diǎn),使用場(chǎng)合十分有限。
目前,在辦公自動(dòng)化的研究熱潮中,如何提高工作效率也成為一個(gè)具有挑戰(zhàn)性的任務(wù)。Python在辦公自動(dòng)化領(lǐng)域的應(yīng)用越來(lái)越受歡迎,其可以實(shí)現(xiàn)文件的批量生成和處理。本書基于Python 3.10版本進(jìn)行編寫,系統(tǒng)地介紹基于Python的辦公自動(dòng)化技術(shù)。
本書將深入地介紹Python在辦公自動(dòng)化方面的應(yīng)用:包括Python編程基礎(chǔ)篇、Excel數(shù)據(jù)自動(dòng)化處理篇、Word文本自動(dòng)化處理篇、幻燈片自動(dòng)化制作篇、郵件自動(dòng)化處理篇、文件自動(dòng)化處理篇。
本書內(nèi)容結(jié)構(gòu)
第1篇:Python編程基礎(chǔ)篇
第1章介紹Python軟件的特點(diǎn)與優(yōu)勢(shì),以及如何快速搭建Python 3.10版本的開發(fā)環(huán)境。
第2章介紹Python編程基礎(chǔ),包括數(shù)據(jù)類型、基礎(chǔ)語(yǔ)法、常用高階函數(shù)和編程技巧。
第3章介紹利用Python進(jìn)行數(shù)據(jù)準(zhǔn)備,包括數(shù)據(jù)的讀取、數(shù)據(jù)的索引、數(shù)據(jù)的切片、數(shù)據(jù)的刪除、數(shù)據(jù)的排序、數(shù)據(jù)的聚合、數(shù)據(jù)的透視、數(shù)據(jù)的合并等。
第2篇:Excel數(shù)據(jù)自動(dòng)化處理篇
第4章介紹利用Python進(jìn)行數(shù)據(jù)處理,包括重復(fù)值的處理、缺失值的處理、異常值的處理等。
第5章介紹利用Python進(jìn)行數(shù)據(jù)分析,包括描述性分析、相關(guān)分析、線性回歸分析。
第6章介紹利用Python進(jìn)行數(shù)據(jù)可視化,包括對(duì)比型、趨勢(shì)型、比例型、分布型等基本圖表的繪制方法。
第3篇:Word文本自動(dòng)化處理篇
第7章介紹文本自動(dòng)化處理,包括應(yīng)用場(chǎng)景及環(huán)境搭建、Python-docx庫(kù)案例演示。
第8章介紹利用Python進(jìn)行文本自動(dòng)化處理,包括使用Python-docx庫(kù)自動(dòng)化處理對(duì)頁(yè)眉、樣式、文本等進(jìn)行處理。
第9章介紹利用Python制作企業(yè)運(yùn)營(yíng)月報(bào)Word版,包括使用Python-docx庫(kù)整理及清洗門店銷售數(shù)據(jù)、運(yùn)營(yíng)數(shù)據(jù)的可視化分析、批量制作企業(yè)運(yùn)營(yíng)月報(bào)等。
第4篇:幻燈片自動(dòng)化制作篇
第10章介紹幻燈片自動(dòng)化制作,包括應(yīng)用場(chǎng)景及環(huán)境搭建、Python-pptx庫(kù)案例演示。
第11章介紹利用Python進(jìn)行幻燈片自動(dòng)化制作,包括自動(dòng)化制作文本、圖形、表格和形狀等內(nèi)容。
第12章介紹利用Python制作企業(yè)運(yùn)營(yíng)月報(bào)幻燈片,包括制作商品銷售分析報(bào)告、制作客戶留存分析報(bào)告。
第5篇:郵件自動(dòng)化處理篇
第13章介紹利用Python批量發(fā)送電子郵件,包括郵件服務(wù)器概述、發(fā)送電子郵件等。
第14章介紹利用Python獲取電子郵件,包括獲取郵件內(nèi)容、解析郵件內(nèi)容等。
第15章介紹利用Python自動(dòng)發(fā)送電商會(huì)員郵件,包括電商會(huì)員郵件營(yíng)銷、提取未付費(fèi)的會(huì)員數(shù)據(jù)、發(fā)送定制郵件提醒和發(fā)送定制短信提醒等。
第6篇:文件自動(dòng)化處理篇
第16章介紹利用Python進(jìn)行文件自動(dòng)化處理,包括文件和文件夾的基本操作、文件的解壓縮操作、顯示目錄樹下的文件名稱、修改目錄樹下的文件名稱、合并目錄樹下的數(shù)據(jù)文件。
本書特色定位
(1)內(nèi)容新穎,講解詳細(xì)。
本書是一本內(nèi)容新穎的Python技術(shù)書,詳細(xì)介紹了基于Python的辦公自動(dòng)化技術(shù),對(duì)于初學(xué)者幫助較大。書中詳細(xì)介紹了大量辦公自動(dòng)化案例,便于讀者練習(xí)和實(shí)踐。
(2)由淺入深,循序漸進(jìn)。
本書以案例為主線,既包括軟件應(yīng)用與操作的方法和技巧,又融入了辦公自動(dòng)化的案例實(shí)戰(zhàn),使讀者通過(guò)對(duì)本書的學(xué)習(xí),能夠輕松、快速地掌握辦公自動(dòng)化技術(shù)。
(3)案例豐富,高效學(xué)習(xí)。
本書基于Python 3.10版本進(jìn)行講解,同時(shí)為了使讀者能夠快速提高辦公自動(dòng)化的綜合能力,本書中的案例都盡可能地貼近實(shí)際工作。
本書讀者對(duì)象
本書的內(nèi)容和案例適合互聯(lián)網(wǎng)、銀行、咨詢、能源等行業(yè)的數(shù)據(jù)分析人員閱讀,可以作為高等院校相關(guān)專業(yè)學(xué)生的參考用書,也可以作為職場(chǎng)人員學(xué)習(xí)Python辦公自動(dòng)化的自學(xué)用書。
由于作者水平所限,書中難免存在一些疏漏和不足,希望同行和讀者給予批評(píng)與指正。
作 者
目錄
第1篇 Python編程基礎(chǔ)篇
第1章 初識(shí)Python語(yǔ)言及開發(fā)環(huán)境搭建 1
1.1 Python及其優(yōu)勢(shì) 2
1.1.1 Python的歷史 2
1.1.2 Python的特點(diǎn) 2
1.1.3 Python的優(yōu)勢(shì) 3
1.2 搭建Python開發(fā)環(huán)境 3
1.2.1 安裝Anaconda 3
1.2.2 安裝Jupyter庫(kù) 5
1.2.3 庫(kù)管理工具pip 7
1.3 上機(jī)實(shí)踐題 8
第2章 Python編程基礎(chǔ) 9
2.1 Python數(shù)據(jù)類型 10
2.1.1 數(shù)值(Number) 10
2.1.2 字符串(String) 11
2.1.3 列表(List) 13
2.1.4 元組(Tuple) 15
2.1.5 集合(Set) 16
2.1.6 字典(Dictionary) 18
2.2 Python基礎(chǔ)語(yǔ)法 20
2.2.1 基礎(chǔ)語(yǔ)法:行與縮進(jìn) 20
2.2.2 條件語(yǔ)句:if及if嵌套 21
2.2.3 循環(huán)語(yǔ)句:while與for 22
2.2.4 格式化:format()函數(shù) 25
2.3 Python常用高階函數(shù) 26
2.3.1 map()函數(shù):數(shù)組迭代 27
2.3.2 reduce()函數(shù):序列累積 28
2.3.3 filter()函數(shù):數(shù)值過(guò)濾 28
2.3.4 sorted()函數(shù):列表排序 29
2.4 Python編程技巧 30
2.4.1 Tab鍵自動(dòng)補(bǔ)全程序 30
2.4.2 多個(gè)變量的數(shù)值交換 31
2.4.3 列表解析式篩選元素 32
2.4.4 遍歷函數(shù) 33
2.4.5 split()函數(shù):序列解包 34
2.5 上機(jī)實(shí)踐題 35
第3章 利用Python進(jìn)行數(shù)據(jù)準(zhǔn)備 36
3.1 數(shù)據(jù)的讀取 37
3.1.1 讀取本地離線數(shù)據(jù) 37
3.1.2 讀取Web在線數(shù)據(jù) 39
3.1.3 讀取常用數(shù)據(jù)庫(kù)中的數(shù)據(jù) 39
3.2 數(shù)據(jù)的索引 41
3.2.1 set_index()函數(shù):創(chuàng)建索引 41
3.2.2 unstack()函數(shù):重構(gòu)索引 43
3.2.3 swaplevel()函數(shù):調(diào)整索引 44
3.3 數(shù)據(jù)的切片 44
3.3.1 提取一列或多列數(shù)據(jù) 44
3.3.2 提取一行或多行數(shù)據(jù) 46
3.3.3 提取指定區(qū)域的數(shù)據(jù) 46
3.4 數(shù)據(jù)的刪除 47
3.4.1 刪除一行或多行數(shù)據(jù) 47
3.4.2 刪除一列或多列數(shù)據(jù) 48
3.4.3 刪除指定的列表對(duì)象 49
3.5 數(shù)據(jù)的排序 50
3.5.1 按行索引對(duì)數(shù)據(jù)進(jìn)行排序 50
3.5.2 按列索引對(duì)數(shù)據(jù)進(jìn)行排序 51
3.5.3 按一列或多列對(duì)數(shù)據(jù)進(jìn)行排序 51
3.5.4 按一行或多行對(duì)數(shù)據(jù)進(jìn)行排序 52
3.6 數(shù)據(jù)的聚合 52
3.6.1 level參數(shù):指定列聚合數(shù)據(jù) 52
3.6.2 groupby()函數(shù):分組聚合 53
3.6.3 agg()函數(shù):自定義聚合 54
3.7 數(shù)據(jù)的透視 55
3.7.1 pivot_table()函數(shù):數(shù)據(jù)透視 55
3.7.2 crosstab()函數(shù):數(shù)據(jù)交叉 58
3.8 數(shù)據(jù)的合并 59
3.8.1 merge()函數(shù):橫向合并 59
3.8.2 concat()函數(shù):縱向合并 62
3.9 工作表合并與拆分 63
3.9.1 單個(gè)工作簿多個(gè)工作表合并 63
3.9.2 多個(gè)工作簿單個(gè)工作表合并 65
3.9.3 工作表按某一列拆分?jǐn)?shù)據(jù) 66
3.10 上機(jī)實(shí)踐題 67
第2篇 Excel數(shù)據(jù)自動(dòng)化處理篇
第4章 利用Python進(jìn)行數(shù)據(jù)處理 69
4.1 重復(fù)值的處理 70
4.1.1 Excel重復(fù)值的處理 70
4.1.2 Python重復(fù)值的檢測(cè) 70
4.1.3 Python重復(fù)值的處理 71
4.2 缺失值的處理 73
4.2.1 Excel缺失值的處理 73
4.2.2 Python缺失值的檢測(cè) 73
4.2.3 Python缺失值的處理 74
4.3 異常值的處理 77
4.3.1 Excel異常值的處理 77
4.3.2 Python異常值的檢測(cè) 77
4.3.3 使用replace()函數(shù)處理異常值 78
4.4 Python處理金融數(shù)據(jù)案例實(shí)戰(zhàn) 80
4.4.1 讀取上證指數(shù)股票數(shù)據(jù) 80
4.4.2 提取2020年8月數(shù)據(jù) 81
4.4.3 填充非交易日缺失數(shù)據(jù) 82
4.4.4 使用diff()函數(shù)計(jì)算數(shù)據(jù)偏移 83
4.5 上機(jī)實(shí)踐題 84
第5章 利用Python進(jìn)行數(shù)據(jù)分析 85
5.1 Python描述性分析 86
5.1.1 平均數(shù)及案例 87
5.1.2 中位數(shù)及案例 89
5.1.3 方差及案例 89
5.1.4 標(biāo)準(zhǔn)差及案例 90
5.1.5 百分位數(shù)及案例 91
5.1.6 變異系數(shù)及案例 92
5.1.7 偏度及案例 93
5.1.8 峰度及案例 93
5.2 Python相關(guān)分析 94
5.2.1 皮爾遜相關(guān)系數(shù) 95
5.2.2 斯皮爾曼相關(guān)系數(shù) 96
5.2.3 肯德爾相關(guān)系數(shù) 97
5.3 Python線性回歸分析 99
5.3.1 線性回歸模型簡(jiǎn)介 100
5.3.2 線性回歸模型建模 102
5.3.3 線性回歸模型案例 103
5.4 上機(jī)實(shí)踐題 107
第6章 利用Python進(jìn)行數(shù)據(jù)可視化 108
6.1 繪制對(duì)比型圖表及案例 109
6.1.1 繪制條形圖 109
6.1.2 繪制氣泡圖 110
6.2 繪制趨勢(shì)型圖表及案例 111
6.2.1 繪制折線圖 112
6.2.2 繪制面積圖 113
6.3 繪制比例型圖表及案例 114
6.3.1 繪制餅圖 115
6.3.2 繪制環(huán)形圖 117
6.4 繪制分布型圖表及案例 118
6.4.1 繪制散點(diǎn)圖 119
6.4.2 繪制箱型圖 120
6.5 繪制其他類型圖表及案例 122
6.5.1 繪制樹狀圖 122
6.5.2 繪制K線圖 124
6.6 上機(jī)實(shí)踐題 126
第3篇 Word文本自動(dòng)化處理篇
第7章 文本自動(dòng)化處理 129
7.1 應(yīng)用場(chǎng)景及環(huán)境搭建 130
7.1.1 文本自動(dòng)化應(yīng)用場(chǎng)景 130
7.1.2 文本自動(dòng)化環(huán)境搭建 130
7.2 Python-docx庫(kù)案例演示 131
7.2.1 document()函數(shù):打開文檔 132
7.2.2 add_heading()函數(shù):添加標(biāo)題 133
7.2.3 add_paragraph()函數(shù):添加段落 133
7.2.4 add_picture()函數(shù):添加圖片 134
7.2.5 add_table()函數(shù):添加表格 135
7.2.6 add_paragraph()函數(shù):設(shè)置段落樣式 136
7.2.7 add_run()函數(shù):設(shè)置字符樣式 137
7.2.8 add_page_break()函數(shù):添加分頁(yè)符 138
7.3 案例演示完整代碼 138
7.4 上機(jī)實(shí)踐題 140
第8章 利用Python進(jìn)行文本自動(dòng)化處理 141
8.1 自動(dòng)化處理頁(yè)眉 142
8.1.1 訪問頁(yè)眉 142
8.1.2 添加頁(yè)眉定義 142
8.1.3 添加簡(jiǎn)單頁(yè)眉 143
8.1.4 添加分區(qū)頁(yè)眉 143
8.1.5 移除頁(yè)眉 144
8.2 自動(dòng)化處理樣式 144
8.2.1 樣式對(duì)象簡(jiǎn)介 144
8.2.2 訪問樣式 145
8.2.3 應(yīng)用樣式 145
8.2.4 添加或刪除樣式 147
8.2.5 定義字符格式 147
8.2.6 定義段落格式 148
8.2.7 使用段落特定的樣式屬性 148
8.2.8 控制樣式的顯示方式 149
8.2.9 處理潛在樣式 149
8.3 自動(dòng)化處理文本 150
8.3.1 設(shè)置段落文本對(duì)齊 150
8.3.2 設(shè)置段落縮進(jìn) 151
8.3.3 設(shè)置制表位 152
8.3.4 設(shè)置段落間距 152
8.3.5 設(shè)置行間距 153
8.3.6 設(shè)置分頁(yè)屬性 153
8.3.7 設(shè)置字體和字號(hào) 154
8.3.8 設(shè)置字體顏色 154
8.4 自動(dòng)化處理節(jié) 155
8.4.1 節(jié)對(duì)象簡(jiǎn)介 155
8.4.2 訪問節(jié)和添加節(jié) 156
8.4.3 節(jié)的主要屬性 157
8.5 上機(jī)實(shí)踐題 159
第9章 利用Python制作企業(yè)運(yùn)營(yíng)月報(bào)Word版 160
9.1 整理及清洗門店銷售數(shù)據(jù) 161
9.1.1 合并各門店的銷售數(shù)據(jù) 161
9.1.2 異常數(shù)據(jù)的檢查和處理 161
9.1.3 缺失數(shù)據(jù)的檢測(cè)與處理 162
9.2 運(yùn)營(yíng)數(shù)據(jù)的可視化分析 163
9.2.1 門店運(yùn)營(yíng)數(shù)據(jù)的可視化分析 163
9.2.2 地區(qū)銷售數(shù)據(jù)的可視化分析 166
9.2.3 客戶購(gòu)買數(shù)據(jù)的可視化分析 169
9.3 批量制作企業(yè)運(yùn)營(yíng)月報(bào) 172
9.3.1 制作門店運(yùn)營(yíng)分析報(bào)告 172
9.3.2 制作地區(qū)銷售分析報(bào)告 173
9.3.3 制作客戶消費(fèi)分析報(bào)告 175
9.4 企業(yè)運(yùn)營(yíng)月報(bào)Word版案例完整代碼 177
9.5 上機(jī)實(shí)踐題 179
第4篇 幻燈片自動(dòng)化制作篇
第10章 幻燈片自動(dòng)化制作 181
10.1 應(yīng)用場(chǎng)景及環(huán)境搭建 182
10.1.1 幻燈片自動(dòng)化應(yīng)用場(chǎng)景 182
10.1.2 幻燈片自動(dòng)化環(huán)境搭建 182
10.2 Python-pptx庫(kù)案例演示 183
10.2.1 presentation()函數(shù):打開演示文稿 183
10.2.2 add_slide()函數(shù):添加幻燈片 183
10.2.3 title_shape()函數(shù):添加主標(biāo)題和副標(biāo)題 185
10.2.4 add_paragraph()函數(shù):添加段落 185
10.2.5 add_chart()函數(shù):插入圖表 186
10.3 案例演示完整代碼 186
10.4 上機(jī)實(shí)踐題 187
第11章 利用Python進(jìn)行幻燈片自動(dòng)化制作 188
11.1 自動(dòng)化制作文本 189
11.1.1 添加普通文本 189
11.1.2 設(shè)置文本加粗 189
11.1.3 設(shè)置文本字號(hào) 190
11.1.4 設(shè)置文本傾斜 191
11.1.5 設(shè)置文本下畫線 192
11.1.6 設(shè)置文本顏色 193
11.2 自動(dòng)化制作圖形 194
11.2.1 添加簡(jiǎn)單圖形 194
11.2.2 添加復(fù)雜圖形 195
11.2.3 添加圖表圖例 196
11.2.4 添加數(shù)據(jù)標(biāo)簽 198
11.2.5 自定義數(shù)據(jù)標(biāo)簽 199
11.2.6 添加復(fù)合圖形 201
11.3 自動(dòng)化制作表格 205
11.3.1 添加自定義表格 205
11.3.2 設(shè)置行高和列寬 205
11.3.3 合并表格首行 206
11.3.4 設(shè)置表格標(biāo)題 208
11.3.5 添加變量數(shù)據(jù) 209
11.3.6 修改表格樣式 211
11.4 自動(dòng)化制作形狀 213
11.4.1 形狀對(duì)象簡(jiǎn)介 213
11.4.2 添加單個(gè)形狀 214
11.4.3 添加多個(gè)相同形狀 215
11.4.4 添加多個(gè)不同形狀 216
11.5 上機(jī)實(shí)踐題 217
第12章 利用Python制作企業(yè)運(yùn)營(yíng)月報(bào)幻燈片 218
12.1 制作商品銷售分析報(bào)告 219
12.1.1 制作銷售額分析 219
12.1.2 制作訂單量分析 220
12.1.3 制作退單量分析 222
12.2 制作客戶留存分析報(bào)告 224
12.2.1 制作新增客戶數(shù)量 224
12.2.2 制作客戶留存率 225
12.2.3 制作客戶流失原因 227
12.3 企業(yè)運(yùn)營(yíng)月報(bào)幻燈片案例完整代碼 229
12.4 上機(jī)實(shí)踐題 235
第5篇 郵件自動(dòng)化處理篇
第13章 利用Python批量發(fā)送電子郵件 237
13.1 郵件服務(wù)器概述 238
13.1.1 郵件服務(wù)器原理 238
13.1.2 開啟126郵箱相關(guān)服務(wù) 239
13.1.3 開啟QQ郵箱相關(guān)服務(wù) 240
13.1.4 開啟Sina郵箱相關(guān)服務(wù) 240
13.1.5 開啟Hotmail郵箱相關(guān)服務(wù) 241
13.2 發(fā)送電子郵件 241
13.2.1 SMTP()方法:連接郵件服務(wù)器 241
13.2.2 ehlo()方法:登錄郵件服務(wù)器 242
13.2.3 sendmail()方法:發(fā)送郵件 243
13.3 發(fā)送電子郵件案例 243
13.4 上機(jī)實(shí)踐題 244
第14章 利用Python獲取電子郵件 245
14.1 獲取郵件內(nèi)容 246
14.1.1 通過(guò)POP3協(xié)議連接郵件服務(wù)器 246
14.1.2 通過(guò)POP3協(xié)議下載郵件 247
14.2 解析郵件內(nèi)容 249
14.2.1 解析郵件正文 249
14.2.2 轉(zhuǎn)換郵件編碼 250
14.3 獲取郵件小結(jié) 250
14.3.1 獲取126郵箱中的郵件 251
14.3.2 獲取QQ郵箱中的郵件 253
14.3.3 獲取Sina郵箱中的郵件 256
14.3.4 獲取Hotmail郵箱中的郵件 259
14.4 上機(jī)實(shí)踐題 262
第15章 利用Python自動(dòng)發(fā)送電商會(huì)員郵件 263
15.1 電商會(huì)員郵件營(yíng)銷 264
15.1.1 會(huì)員郵件營(yíng)銷 264
15.1.2 提高郵件的發(fā)送率 264
15.2 提取未付費(fèi)的會(huì)員數(shù)據(jù) 264
15.2.1 整理電商會(huì)員數(shù)據(jù) 264
15.2.2 讀取未付費(fèi)會(huì)員的信息 265
15.3 發(fā)送定制郵件提醒 266
15.3.1 創(chuàng)建SMTP對(duì)象 266
15.3.2 發(fā)送定制郵件信息 266
15.4 發(fā)送定制短信提醒 268
15.4.1 注冊(cè)Twilio賬號(hào) 268
15.4.2 發(fā)送定制短信 269
15.5 上機(jī)實(shí)踐題 270
第6篇 文件自動(dòng)化處理篇
第16章 利用Python進(jìn)行文件自動(dòng)化處理 271
16.1 文件和文件夾的基礎(chǔ)操作 272
16.1.1 復(fù)制文件和文件夾 272
16.1.2 移動(dòng)文件和文件夾 273
16.1.3 刪除文件和文件夾 274
16.2 文件的解壓縮操作 274
16.2.1 讀取ZIP文件 274
16.2.2 解壓縮ZIP文件 275
16.2.3 創(chuàng)建ZIP文件 276
16.3 顯示目錄樹下的文件名稱 276
16.3.1 顯示指定目錄樹下文件名稱 277
16.3.2 顯示目錄樹下文件及子文件名稱 277
16.4 修改目錄樹下的文件名稱 278
16.4.1 修改所有類型文件名稱 278
16.4.2 修改指定類型文件名稱 279
16.5 合并目錄樹下的數(shù)據(jù)文件 280
16.5.1 合并所有類型文件中的數(shù)據(jù) 280
16.5.2 合并指定類型文件中的數(shù)據(jù) 282
16.6 上機(jī)實(shí)踐題 282
附錄A 安裝Python 3.10版本及第三方庫(kù) 283
附錄B Python常用的第三方工具包簡(jiǎn)介 286
B.1 數(shù)據(jù)分析類包 286
B.2 數(shù)據(jù)可視化類包 287
B.3 機(jī)器學(xué)習(xí)類包 288