首页
/
每日頭條
/
科技
/
如何使用python讀取excel
如何使用python讀取excel
更新时间:2026-10-21 13:50:22

在實際應用中,經常會遇到需要讀取或導入Excel文件的情況,那麼在Python中如何讀取 Excel 表格呢?

本文中介紹如何使用Tablib庫來導入Excel文件。

Tablib是一個表格數據集庫,可用于導入、導出和操作表格數據集,Tablib支持大部分流行的表格數據(文件)格式:

cli

csv

dbf

df (DataFrame)

html

jira

json

latex

ods

rst

tsv

xls

xlsx

yaml

其中,xls和xlsx就是Excel文件格式。

我們看看Tablib的使用方法。

安裝

執行命令

pip install “tablib[all]”

安裝Tablib及所有支持格式的依賴項。

如果隻需支持xls,xlsx格式,則使用下述命令:

pip install "tablib[xls,xlsx]"

讀取Excel文件

Tablib的核心是Dataset對象,我們通過創建Databook或Dataset來實現對數據表的讀取。我們使用一個示例Excel文件,該文件隻有一個工作表,表格内容如下:

如何使用python讀取excel(Python之讀取Excel文件)1

demo.xlsx文件

下面的代碼對該文件進行讀取。

from tablib import Dataset,Databook #打開Xcel文件,注意xlsx的打開方式為字節方式”rb“; CSV等類型的文件則采用文本方式打開。 filepath = "demo.xlsx" f = open(filepath,"rb") multi_sheet = False #對于多工作表的Excel表格,使用Databook讀取工作表 if multi_sheet: databook = Databook().load(f.read(),headers=False,format="xlsx") datasets = databook.sheets() #獲得第2個工作表 dataset = datasets[1] else:#對于隻有一個工作表的Excel表格,可直接使用Dataset讀取dataset對象 dataset = Dataset().load(f.read(),headers=False,format="xlsx") f.close() print(dataset)

在上述代碼中,使用open打開Excel文件,調用f.read()作為輸入流傳遞給Dataset對象讀取。需要注意的是xlsx文件的打開方式為字節方式"rb"; 而CSV等文本類型的文件則采用文本方式打開。

上述代碼的輸出結果如下:

簡單的表格示例|None|None|None None |None|None|None 姓名 |年齡 |身高 |體重 張三 |18 |178 |68 李四 |20 |177 |65 王五 |22 |176 |70

上面代碼中隻是取到了數據,還需要對數據進行一些處理,包括設置表頭、删除非标準數據行等。

#接續上面的代碼 #設置表頭和标題 dataset.title = dataset[0] dataset.headers = dataset[2] #前3行不是數據,删除。 del dataset[:3] print(dataset)

輸出結果:

姓名|年齡|身高 |體重 --|--|---|-- 張三|18|178|68 李四|20|177|65 王五|22|176|70

Dataset對象設置了表頭之後,我們就可以按列名獲取數據了。

#打印‘姓名’列 print(dataset["姓名"])

輸出結果:

['張三', '李四', '王五']

以上代碼在Python3.7運行通過。

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
魅族mx6參數配置
魅族mx6參數配置
魅族mx6參數配置?魅族MX6參數配置:搭載的是聯發科HelioX20處理器,下面我們就來說一說關于魅族mx6參數配置?我們一起去了解并探讨一下這個問題吧!魅族mx6參數配置魅族MX6參數配置:搭載的是聯發科HelioX20處理器。配備4G...
2026-10-21
2022款凱迪拉克xt4兩驅領先
2022款凱迪拉克xt4兩驅領先
當消費者手握20-30萬元的預算去購買一台豪華品牌緊湊型SUV時,肯定繞不過BBA品牌,但是奔馳GLA的1.3T發動機在這個價位感覺有點沒面子,寶馬X1的後排坐墊比較短,家用舒适性保障不大,奧迪Q3整體又稍微顯小,這個時候就會把目光轉向二線...
2026-10-21
oppor9s手機忘記鎖屏密碼怎麼辦
oppor9s手機忘記鎖屏密碼怎麼辦
oppor9s手機忘記鎖屏密碼怎麼辦?手機雙清重置密碼:首先将OPPOR9s關機,在關機狀态下,長按「電源鍵」+「Home鍵」不放,直到出現Recovery界面為止Recovery模式下使用音量鍵移動,電源鍵确認,按照下圖的指示對手機進行清...
2026-10-21
醫保手機怎麼交
醫保手機怎麼交
醫保手機怎麼交?打開微信手機客戶端;進入後,點擊“我”中的“支付”;點擊“城市服務”;進入後,點擊“社保”;點擊“山西城鄉居民社保繳納”;進入後,點擊“城鄉居民醫療保險”,綁定個人賬号即可繳納,我來為大家科普一下關于醫保手機怎麼交?以下内容...
2026-10-21
條件格式空值設置
條件格式空值設置
條件格式原創2021-10-2112:20·起飛EXCEL這裡是起飛EXCEL,專門做EXCEL培訓的财務總監,關注我,帶給您最高效的EXCEL學習的邏輯和體系。使您在職場脫穎而出。開這個頭條号,我是準備當專欄來寫的,如果你正好想學習EXC...
2026-10-21
Copyright 2023-2026 - www.tftnews.com All Rights Reserved