您好,登錄后才能下訂單哦!
小編給大家分享一下python與excel結合的方法,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討方法吧!
python通過第三方庫openpyxl與excel進行結合。方法是:1、安裝并導入openpyxl模塊;2、使用openpyxl.load_workbook()函數加載表格;3、獲取Workbook對象并進行增刪改查操作。
Excel 是 Windows 環境下流行的、強大的電子表格應用。openpyxl 模塊讓 Python 程序能讀取和修改 Excel 電子表格文件。例如,可能有一個無聊的任務,需要從一個電子表格拷貝一些數據,粘貼到另一個電子表格中。或者可能需要從幾千行中挑選幾行,根據某種條件稍作修改。或者需要查看幾百份部門預算電子表格,尋找其中的赤字。正是這種無聊無
腦的電子表格任務,可以通過 Python 來完成。LibreOffice Calc, WPS 和 OpenOffice Calc 都能處理 Excel 的電子表格文件格式,這意味著 openpyxl 模塊也能處理來自這些應用程序的電子表格。你可以從 https://www.libreoffice.org/和 http://www.openoffice.org/下載這些軟件。即使你的計算機上已經安裝了 Excel,可能也會發現這些程序更容易使用。
1. Excel文檔基本定義
工作簿(workbook): 一個 Excel 電子表格文檔;
工作表(sheet): 每個工作簿可以包含多個表, 如: sheet1, sheet2等;
活動表(active sheet): 用戶當前查看的表;
列(column): 列地址是從 A 開始的;
行(row): 行地址是從 1 開始的;
單元格(cell): 特定行和列的方格;
2.
Python 沒有自帶 openpyxl,所以必須安裝。
pip3 install openpyxl
3. 讀取 Excel 文檔
將使用一個電子表格 example.xlsx,你可以自己創建這個電子文檔,內容如下:
在導入 openpyxl 模塊后,就可以使用 openpyxl.load_workbook()函數。打開 Excel 文檔
# 導入工作薄 1. wb = openpyxl.load_workbook('excelDemo/example.xlsx') # 加載工作薄 2. wb.sheetnames # 獲取當前所有工作表的名稱, 返回一個列表 3. wb.active # 獲取當前活躍的工作表
從工作簿中取得工作表
4. sheet = wb['Sheet1'] # 工作表 5. sheet.title # 獲取當前活動表的名稱 6. sheet.cell(row=1, column=2) # 獲取單元格指定行和指定列的內容
表中取得單元格
Cell 對象有一個 value 屬性,不出意外,它包含這個單元格中保存的值。Cell 對象也有 row、column 和 coordinate 屬性,提供該單元格的位置信息。
row屬性給出的是整數 1,column 屬性給出的是'B',coordinate 屬性給出的是'B1'。
6. cell = sheet['A1'] 7. cell_value = sheet['A1'].value 8. cell.row, cell.column cell.coordinate
4. 工作簿、工作表、單元格
下面是從電子表格文件中讀取單元格涉及的所有函數、方法和數據類型。一個完整的操作過程如下:
導入 openpyxl 模塊。
調用 openpyxl.load_workbook()函數。
取得 Workbook 對象。
調用 wb.sheetnames和 wb.active 獲取工作簿詳細信息。
取得 Worksheet 對象。
使用索引或工作表的 cell()方法,帶上 row 和 column 關鍵字參數。
取得 Cell 對象。
讀取 Cell 對象的 value 屬性
一個完整的案例代碼如下:
import openpyxl # 1. 讀取excel文檔 wb = openpyxl.load_workbook('excelDemo/example.xlsx') # # 返回一個workbook對象, 有點類似于文件對象; # print(wb, type(wb)) # 2. 在工作薄中取得工作表 # print(wb.get_sheet_names()) # 返回一個列表, 存儲excel表中所有的sheet工作表; print(wb.sheetnames) # 返回一個worksheet對象, 返回當前的活動表; # print(wb.get_active_sheet()) # print(wb.active) # 3. 獲取工作表中, 單元格的信息 # wb.get_sheet_by_name('Sheet1') sheet = wb['example'] print(sheet['A1']) print(sheet['B1'].value) cell = sheet['B1'] print(cell.row, cell.column) print(sheet.cell(row=3, column=2)) print(sheet.cell(row=3, column=2).value) print(sheet.cell(row=3, column=2, value='www')) # sheet的屬性 print(sheet.max_column) print(sheet.max_row) print(sheet.title) sheet.title = 'example' print(sheet.title) for row in sheet.rows: for cell in row: print(cell.value, end='\t') print('\n') wb.save(filename="excelDemo/example.xlsx")
看完了這篇文章,相信你對python與excel結合的方法有了一定的了解,想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。