Python自動化辦公之讀取Excel數據的實現

前言

之前的章節我們學習瞭 python 關於 word 文件相關操作的知識點,從今天開始講學習關於 excel 的相關操作,來看一下關於即將學習的 excel 相關知識點都有哪些?

  • 如何讀取 excel 文件
  • 如何生成 excel 文件
  • 如何在 excel 中生成基礎的圖表

目標:實現對 excel 的最基礎的讀寫內容

該篇章所使用的新的模塊

xlrd —> excel 的讀取模塊

xlsxwriter —> excel 的寫入模塊

ps:excel 的操作在 python中有多個模塊,為瞭能夠快速使用,這裡我們選擇瞭相對簡單並且功能較為全面的模塊來為大傢做介紹。

Excel 讀取 – xlrd

xlrd 的安裝

安裝方式:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple xrld==1.2.0

這裡可能大傢會有疑問,為何要指定 xrld 的版本號。原始更高級的版本,存在著一些不兼容的問題,所以在該章節我們使用 1.2.0 版本。

導入:

import xlrd

常用函數介紹

獲取 excel 對象

使用方法:

book = xlrd.open_workbook(excel文件) 這裡的 book 就是 excel 對象

返回值:

excel 對象

代碼示例如下:

# coding:utf-8
import xlrd

excel = xlrd.open_workbook('study.xlsx')
print(excel)

運行結果如下:

獲取工作簿

在 excel 表格中存在多個工作簿,獲取工作簿有三種常用方式。

函數名 說明
book.sheet_by_name() 按照工作簿名稱獲取
book.sheet_by_index() 按照索引獲取
book.sheets() 獲取所有工作簿列表

代碼示例如下:

# coding:utf-8
import xlrd

excel = xlrd.open_workbook('study.xlsx')
# print(excel)

book = excel.sheet_by_name('學生手冊')
print(book)

book = excel.sheet_by_index(0)
print(book.name)

運行結果如下:

ps:在不知道工作簿名稱的情況下也可以通過 for 循環的方式打印輸出所有的工作簿名稱:

# coding:utf-8
import xlrd

excel = xlrd.open_workbook('study.xlsx')
# print(excel)

book = excel.sheet_by_name('學生手冊')
print(book)

book = excel.sheet_by_index(0)
print(book.name)

for i in excel.sheets():
    print(i.name)

讀取工作簿內容

函數名 說明
sheet.nrows 返回總行數
sheet.ncols 返回總列數
sheet.get_rows() 返回每行內容列表

代碼示例如下:

# coding:utf-8

import xlrd

excel = xlrd.open_workbook('study.xlsx')
# print(excel)

book = excel.sheet_by_name('學生手冊')
print(book)

book = excel.sheet_by_index(0)
print(book.name)

for i in excel.sheets():
    print(i.name)

print("當前 excel 文件共有:", book.nrows, "行")
print("當前 excel 文件共有:", book.ncols, "列")

for i in book.get_rows():       # for 循環獲取每一行的內容
    content = []                # 定義一個空列表,用以存儲每一次循環獲取的內容
    for j in i:                 # for 循環獲取每一行的每一小格的內容,然後添加到 content 空列表
        content.append(j.value)
    print(content)

運行結果如下:

到此這篇關於Python自動化辦公之讀取Excel數據的實現的文章就介紹到這瞭,更多相關Python讀取Excel數據內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: