python自动化办公实例展示_python自动化办公?学这些就够用了
知乎上有人提問:用python進行辦公自動化都需要學習什么知識呢?
這可能是很多非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處理庫。
word自動化
python操作Word的庫:
python-docx、import docx:只對windows平臺有效
pypiwin32、import win32com:跨平臺,但無法處理doc格式的word文本,doc格式不是基于xml的
textract、import textract:它同時兼顧“doc”和“docx”,但安裝過程需要一些依賴。
你可以批量的用python生成word文件,推薦使用docx,不需要會太多。
郵件處理
python處理郵件也是極其便利的,smtplib、imaplib、email三個庫配合使用,實現郵件編寫、發送、接收、讀取等一系列自動化操作,省時省力。
看了其他很多教程都有各種各樣的問題,需要不斷改bug,所以這個大家先可以跑跑上面的代碼。
文件批量處理
文件處理包括批量修改或創建文件名、批量生成文檔、批量修改路徑等等重復性操作。如果一個個手工操作,那真的心累。
python在處理批量操作有得天獨厚的優勢,成千上萬的文件修改可能只需幾秒的時間。
os是python文件操作的庫,可以實現對電腦上文件的增刪改查。
方法
作用
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庫,解決了哪些問題?
總結
以上是生活随笔為你收集整理的python自动化办公实例展示_python自动化办公?学这些就够用了的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: sklearn svm如何选择核函数_文
- 下一篇: 数据通信原理_同网段主机通信原理