Python處理Excel數據之openpyxl

1、需要知道的幾個概念

  • 工作簿(workbook): 一個 Excel 電子表格文檔;
  • 工作表(sheet): 每個工作簿可以包含多個表, 如: sheet1, sheet2等;
  • 活動表(active sheet): 用戶當前查看的表;
  • 列(column): 列地址是從 A 開始的;
  • 行(row): 行地址是從 1 開始的;
  • 單元格(cell): 特定行和列的方格;

2、安裝openpyxl模塊

Python並沒有帶openpyxl模塊,安裝過程中可能會失敗,檢查幾個原因:網絡問題、pip工具版本、

pip install openpyxl

3、讀取Excel文檔

  • 導入openpyxl模塊,使用模塊中的load_workbook()函數加載Eexcel文件,該函數返回一個Excel文件對象
#獲取excel文件對象(工作薄對象)
xlsx_file = openpyxl.load_workbook('C:\\Users\\zxx\\Desktop\\demo.xlsx')

#獲取文件對象中所有的表格名稱
names = xlsx_file.get_sheet_names()
  • 從工作薄對象中獲取工作表對象,可以根據索引獲取也可以根據表名稱獲取
#獲取活動表
active_sheet = xlsx_file.active

#獲取表的名稱
title = active_sheet.title
  • 從工作表的獲取單元格
#獲取第三行第四列的單元格
cell = active_sheet.cell(3,4)

#獲取單元格中的值
v = cell.value

4、讀取表格數據(完整案例)

import openpyxl

#獲取工作薄對象
xlsx_file = openpyxl.load_workbook('C:\\Users\\zxx\\Desktop\\demo.xlsx')

#獲取單元表對象
gz_sheet = xlsx_file.get_sheet_by_name('工資表')

#獲取表中所有的行
number = gz_sheet.max_row

#獲取表中所有人的姓名
for row in range(1,number):
    cell = gz_sheet.cell(row,1)
    print(cell.value)

今天先寫到這,太晚了,得空會繼續補充,有對該內容感興趣的同學可以留言交流或學習我錄製的以下視頻:

Python自動化辦公(Excel、Word、PDF、CSV、JSON、Zip、Selenium)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章