{eval=Array;=+count(Array);}
我看過許多人一看到別人提問"python處理excel"之類的話題,立馬就說出一大堆的庫,結(jié)果很多初學(xué)者苦苦地編寫Python代碼處理數(shù)據(jù),最后他們都會(huì)感覺太坑爹了。
如果我在這里列出各種處理方法,那么成千上百的字?jǐn)?shù)都不夠看。我覺得你更應(yīng)該了解思路與工具的選擇,不然方向錯(cuò)了,你就算拿著再好用的工具也發(fā)揮不了作用。
Python中有許多庫可以與Excel交互,比如 xlrd、xlwings等等,但是我要強(qiáng)調(diào)的是,這些庫僅僅讓你方便地與Excel打交道,比如,讀寫數(shù)據(jù)、設(shè)置格式。
如果你的日常任務(wù)僅僅是簡(jiǎn)單設(shè)置格式,不需要對(duì)數(shù)據(jù)做復(fù)雜的計(jì)算和處理,那么這些庫已經(jīng)可以滿足你的需求
很多人已經(jīng)會(huì)一些編程語言(比如 vba),轉(zhuǎn)到python上處理excel,結(jié)果是把vba代碼用python代碼寫一遍。諸如求平均、求和等各種從簡(jiǎn)單到復(fù)雜的處理,都依靠自己編寫各種循環(huán)遍歷,最后只能從入門到放棄。
上述原因主要是他們只關(guān)注如何與excel交互,而忽視了數(shù)據(jù)處理才是整個(gè)問題的關(guān)鍵點(diǎn)。而在python中數(shù)據(jù)處理的最重要的庫pandas,就是你唯一的選擇。
因此你需要先評(píng)估你的日常處理任務(wù),是否有非常多的處理環(huán)節(jié)是從excel開始的。
比如,你的數(shù)據(jù)是直接從數(shù)據(jù)庫中處理獲取,你只需要編寫代碼把數(shù)據(jù)輸出到excel,那么這顯然不需要使用pandas(實(shí)際上使用pandas很可能比使用其他庫來得簡(jiǎn)單)
如果你需要使用python做各種處理,然后輸出excel,那么你必須要學(xué)習(xí)pandas,不然你只是在低效率處理數(shù)據(jù)
pandas的一個(gè)最大的優(yōu)勢(shì)在于,大多時(shí)候你只需要告訴他做什么,就可以完成工作,而不需要你親自編寫如何遍歷數(shù)據(jù)的代碼。許多非常復(fù)雜的處理要求,使用pandas解決是輕而易舉,并且有非常好的擴(kuò)展性。
我不想列出代碼去占用篇幅了。如果你有興趣,可以參考我我們的文章,你會(huì)發(fā)現(xiàn)這些文章中的python解決方案,完全沒有自己遍歷數(shù)據(jù)的寫法。以下是其中的一些文章:
[Excel數(shù)據(jù)處理你是選擇Vba還是Python?當(dāng)然選擇pandas](https://www.toutiao.com/i6713810410480337419/)
4篇"Python替代Excel Vba"系列文章
若干篇利用pandas做數(shù)據(jù)分析的案例文章
最后我還是要提醒你,一定要根據(jù)自己的情況選擇適當(dāng)?shù)墓ぞ?,這些都是輔助你工作的工具,不要被工具限制了你的思路
Python批量處理Excel的話,有許多現(xiàn)成的庫可以直接使用,下面我簡(jiǎn)單介紹一下,感興趣的朋友可以嘗試一下:
這是Python 2個(gè)非常基礎(chǔ)的Excel讀寫庫,其中xlrd專門用于讀取Excel,xlwt專門用于寫入Excel,支持常見的行列、單元格操作,安裝的話,直接在cmd窗口輸入命令“pip intsall xlrd xlwt”即可,官方自帶有非常詳細(xì)的入門教程文檔和API接口,非常適合開發(fā)者學(xué)習(xí):
這里以簡(jiǎn)單的讀取Excel為,測(cè)試代碼如下,基本思想先打開Excel,獲取工作表,然后根據(jù)所需直接讀取對(duì)應(yīng)行列和單元格內(nèi)容即可,非常簡(jiǎn)單:
這是一個(gè)專門用于讀取Excel的Python庫,目前僅支持Excel 2010格式(xls不支持),操作單元格、行列,設(shè)置樣式、插入圖片等非常容易,安裝的話,直接在cmd窗口輸入命令“pip install openpyxl”即可,官方文檔含有非常詳細(xì)的代碼示例和截圖,非常適合初學(xué)者入門和學(xué)習(xí):
測(cè)試代碼如下,非常簡(jiǎn)單,以寫入Excel為例,基本思想先創(chuàng)建一個(gè)Excel文件,然后獲取工作表,最后再往對(duì)應(yīng)單元格寫入內(nèi)容即可:
這是Python一個(gè)非常著名的數(shù)據(jù)處理庫,在業(yè)界非常流行和受歡迎,內(nèi)置了大量函數(shù)和數(shù)據(jù)類型,可以輕松處理Excel文件,并進(jìn)行復(fù)雜的數(shù)據(jù)處理,代碼量更少,功能也更強(qiáng)大,安裝的話,直接在cmd窗口輸入命令“pip install pandas”即可,官方自帶有非常詳細(xì)的入門教程,源碼都可直接運(yùn)行,非常適合開發(fā)者學(xué)習(xí)和使用:
這里以讀寫Excel為例,測(cè)試代碼如下,非常簡(jiǎn)單,一行代碼就可輕松獲取或?qū)懭霐?shù)據(jù),功能非常強(qiáng)大,推薦使用:
目前,就介紹這3個(gè)非常不錯(cuò)的Python Excel處理庫吧,對(duì)于日常辦公和工作來說,非常不錯(cuò),只要你有一定Python基礎(chǔ),熟悉一下相關(guān)文檔和示例,很快就能掌握的,網(wǎng)上也有相關(guān)教程和資料,介紹的非常詳細(xì),感興趣的話,可以搜一下,希望以上分享的內(nèi)容能對(duì)你有所幫助吧,也歡迎大家評(píng)論、留言進(jìn)行補(bǔ)充。
2
回答0
回答0
回答10
回答0
回答0
回答0
回答0
回答0
回答0
回答