python操作excel真的那麼神奇嗎?

怎麼治啊弟弟


Excel電子表格是您有時必須處理的事情之一。要麼是因為您的老闆喜歡它們,要麼是因為營銷需要它們,您可能必須學習如何使用電子表格,這才對瞭解openpyxl有用!

電子表格是一種非常直觀且用戶友好的方式,無需任何技術背景即可操作大型數據集。這就是為什麼它們今天仍然如此普遍。

在本文中,您將學習如何使用openpyxl執行以下操作:

  • 自信地處理Excel電子表格

  • 從電子表格中提取信息

  • 創建簡單或更復雜的電子表格,包括添加樣式,圖表等

本文是為那些對Python數據結構(如字典和列表)有相當瞭解而準備的,當然如果你有編程概念,你就可以學習,很容易上手。

首先你得安裝這個工具包

pip install openpyxl

安裝軟件包後,您應該可以使用以下代碼創建一個超級簡單的電子表格:

from openpyxl import Workbookworkbook = Workbook()sheet =

workbook.active

sheet["A1"] = "hello"sheet["B1"] = "world!"workbook.save(filename="hello_world.xlsx")

上面的代碼應hello_world.xlsx在用於運行代碼的文件夾中創建一個名為的文件。如果您使用Excel打開該文件,則應該看到類似以下內容的內容:

恭喜你,你已經成功創建第一個電子表格!那讓我們開始閱讀一些電子表格!首先,打開示例電子表格:

>>> from openpyxl import load_workbook>>> workbook = load_workbook(filename="sample.xlsx")>>> workbook.sheetnames['Sheet 1']>>> sheet =

workbook.active

>>> sheet>>>

sheet.title

'Sheet 1'

在上面的代碼,你第一次打開電子表格sample.xlsx使用load_workbook(),然後你可以使用

workbook.sheetnames

可查看所有其他的工作表。之後,workbook.active選擇第一個可用的工作表,在這種情況下,您會看到它自動選擇了工作表1。

現在,打開電子表格後,您可以像這樣輕鬆地從其中檢索數據:

>>> sheet["A1"]>>> sheet["A1"].value'marketplace'>>> sheet["F10"]

.value

"G-Shock Men's Grey Sport Watch"

要返回單元格的實際值,您需要執行

.value

。否則,您將獲得主要的單元格對象。您也可以使用該方法.cell()使用索引符號檢索單元格。請記住添加

.value

以獲取實際值而不是單元格對象:>>> sheet.cell(row=10, column=6)>>> sheet.cell(row=10, column=6)

.value

"G-Shock Men's Grey Sport Watch"

上面顯示了打開電子表格的最快方法。但是您也可以傳遞其他參數來更改電子表格的加載方式。

經過以上簡單的功能敘述,您現在應該知道如何在Python中使用電子表格了!openpyxl是以Python方式從電子表格中提取有價值的信息,無論複雜程度如何,你也可以創建自己的電子表格,向電子表格中添加一些很酷的功能,例如條件格式或圖表。

您可以使用openpyxl本指南中未涉及的其他一些方法,但是您始終可以訪問該軟件包的官方文檔網站以瞭解更多信息,或者甚至可以冒險檢查其源代碼並進一步改進該軟件包。

如果您有任何疑問,或者想了解更多信息,隨時在下面留下任何評論。


我是沐叔


所謂的神奇只不過是提供了大量第三方包,類似vba,將許多繁瑣的手動操作轉換為代碼操作,提高了處理速度和工作效率,下面我簡單介紹3個常用的python excel處理包,感興趣的朋友可以嘗試一下:

xlrd和xlwt

這是2個非常基礎的python excel處理包,在日常excel處理中經常會用到,其中xlrd專門用去讀取excel,xlwt專門用於寫入excel,常見的單元格讀寫/合併、樣式背景色的設置以及行高/列高的設置等這2個包都可以輕鬆完成,對於一些繁瑣、重複的操作可以使用一下這2個包,簡單易學,非常容易入門,而且官方自帶有非常詳細的教程,非常適合初學者學習和掌握:


openpyxl

這也是桌面端比較常用的一個python excel處理庫,和xlrd、xlwt類似,openpyxl融合了excel的讀寫,因此不需要單獨分開編碼,常見的樣式設置、圖片/表格插入、公式/函數使用、單元格合併等基本操作這個模塊都可以輕鬆完成,如果你有一定python基礎,熟悉openpyxl來說非常容易,官方有非常詳細的教程示例,所有代碼都可以直接運行,需要注意的是openpyxl只適用於xlsx/xlsm,xls並不適用:

pandas

這是python針對數據處理專門提供的一個第三方模塊,在日常實驗、報表等數據處理中經常會用到,內置了大量函數和類型(series/dataframe),可以輕鬆處理各種常見的文件格式,包括excel、csv、json、txt等,操作靈活、功能強大,只需簡單幾行代碼就可快速加載處理數據,還支持數據可視化,在數據分析方面有著非常廣泛的應用,非常值得學習,可以大大減少工作量,提高工作效率:

當然,除了以上3個常見的python excel處理庫,xlutils等也都非常不錯,基本使用方式和原理都是一樣的,官方也有參考代碼和示例,只要你熟悉一下很快就能掌握的,至於選擇哪個包,簡單一些就是xlrd/xlwt、openpyxl,複雜一些就是pandas,神奇倒不至於,就是處理起來更方便而已,網上也有相關教程和資料,介紹的非常詳細,感興趣的話,可以搜一下,希望以上分享的內容能對你有所幫助吧,也歡迎大家評論、留言進行補充。


小小猿愛嘻嘻


我的感受是算不上神奇,畢竟都是工具,只是應用的場合不同而已。

每天幾百行,10幾列的數據,主要的內容是銷售數據

從你的工作內容描述來看,其實Excel就可以高效完成,而且我覺得Excel會比python更高效。Excel的數據透視表我想可以做出很多意想不到的結果出來。以你目前的數據來看,單純從肉眼上看,利用Excel的計算結果和Python的計算結果是感覺不到兩者的差別的。相反Excel卻能更加自由便捷的使用,達到心中的期望。

Python是一種語言,被廣泛應用在數據行業

Python因為其易上手,跨平臺等特性,被認為是一種解釋性腳本語言(膠水語言)。很多需要處理的問題通過幾行代碼就解決掉。所以,你經常會看到利用python寫幾行代碼就實現一個爬蟲,相當的快捷。

Python處理Excel有相應的包xlrd,xlsxwriter等其它包,都可以實現對Excel的操作。我在平時的工作中也會利用Python去操作Excel,主要是讀和寫數據,就是從Excel讀取的數據寫到數據庫中,或者多平臺、多系統的數據通過Python計算後,將結果寫到Excel發給相應的工作人員。

總的來說,如果單純地從單個工作來說,能在Excel中工作的,就在Excel中完成,如果想提高工作效率,即通過Python完成自動化,提高工作效率,那Python是不錯的選擇。


Bean蠶豆


python處理excel一般,不建議使用。如果處理大量數據,可以試試,一般用途的很蹩腳,不要浪費時間了學了puthon操作excel。


河沿卒179234258


是的 速度快 不會錯


分享到:


相關文章: