国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
簡潔而優(yōu)雅,Python Tablib實現(xiàn)將數(shù)據(jù)導(dǎo)出為Excel, Json等N種格式

遇見 Tablib

我們在 Python 實際開發(fā)過程中,經(jīng)常涉及將數(shù)據(jù)導(dǎo)出為 Excel、Csv、Yaml、Json 等各種格式的文件的需求,一些粗魯?shù)膶崿F(xiàn)方式是通過安裝各種第三方模塊以支持不同格式文件的導(dǎo)出操作。

接下來要我們要介紹的這個模塊,再也不需要擔(dān)心因?qū)С霾煌袷綌?shù)據(jù)時而調(diào)用各種第三方模塊了,當(dāng)然使用 Pandas 也是一個不錯的選擇,只是過于重量級了。

Python Tablib 是麻省理工學(xué)院授權(quán)的與格式無關(guān)的表格數(shù)據(jù)集庫。支持導(dǎo)入、導(dǎo)出和操作表格數(shù)據(jù)集。優(yōu)雅的將數(shù)據(jù)導(dǎo)出為各種不同的格式,包括Excel,Json,Html,Yaml,Csv,Tsv等格式。


Tablib 安裝

我們在 Windows10 Python3 環(huán)境下,使用 pip 進(jìn)行安裝 ,安裝命令如下:

pip install tablib

接下來,讓我們一步步了解如何使用 Tablib ,簡潔而又優(yōu)雅的實現(xiàn)將數(shù)據(jù)導(dǎo)出為各種格式。


創(chuàng)建數(shù)據(jù)集

我們使用 tablib.Dataset 方法,采用如下方式創(chuàng)建數(shù)據(jù)集:

我們還可以另一種方式創(chuàng)建數(shù)據(jù)集,如下:

我們還可以通過導(dǎo)入現(xiàn)有文件數(shù)據(jù)的方式創(chuàng)建數(shù)據(jù)集,如下,我們?yōu)?dump.json 文件。

我們使用 tablib.Dataset.load 方法導(dǎo)入 dump.json 文件數(shù)據(jù),實現(xiàn)如下:

創(chuàng)建一個 tablib.Dataset 通過 load 方法,導(dǎo)入現(xiàn)已存在的文件。強大之處是 tablib 能夠自動檢測傳入的文件類型,并使用適當(dāng)?shù)母袷交椒ㄟM(jìn)行導(dǎo)入,實現(xiàn)從各種不同的文件類型中導(dǎo)入——強無敵。

比如,我們再導(dǎo)入 dataset.xlsx 文件,代碼實現(xiàn)如下:


添加行

我們可以使用 tablib.Dataset.append 方法,實現(xiàn)向數(shù)據(jù)集尾部添加行數(shù)據(jù),需要注意的是每行的元素數(shù)量應(yīng)與數(shù)據(jù)集的列數(shù)相同,代碼實現(xiàn)如下:

我們也可以使用 tablib.Dataset.insert 方法,實現(xiàn)向數(shù)據(jù)集指定位置添加行數(shù)據(jù),同樣需要注意每行的元素數(shù)量應(yīng)與數(shù)據(jù)集的列數(shù)相同,代碼實現(xiàn)如下:


添加列

我們可以使用 tablib.Dataset.append_col 方法,實現(xiàn)向數(shù)據(jù)集尾部添加列數(shù)據(jù),需要注意的是每列的元素數(shù)量應(yīng)與數(shù)據(jù)集的行數(shù)相同,代碼實現(xiàn)如下:

我們也可以使用 tablib.Dataset.insert_col 方法,實現(xiàn)向數(shù)據(jù)集指定位置添加列數(shù)據(jù),需要注意的是每列的元素數(shù)量應(yīng)于數(shù)據(jù)集的行數(shù)相同,代碼實現(xiàn)如下:


選擇行和列

我們可以像Python列表一樣通過切片和索引獲取行數(shù)據(jù)。像Python字典通過列名和索引獲取列數(shù)據(jù),代碼實現(xiàn)如下:


刪除行

我們可以使用以下方式,實現(xiàn)行刪除:

  • tablib.Dataset.pop :刪除最后一行
  • tablib.Dataset.lpop :刪除第一行
  • del dataset[n: m] :刪除指定范圍的行

刪除列

我們可以使用 del dataset['column_name'] ,實現(xiàn)刪除指定列,代碼實現(xiàn)如下:


數(shù)據(jù)格式轉(zhuǎn)換

我們可以將數(shù)據(jù)集轉(zhuǎn)換為如下任一格式,強無敵。

  • Excel ( 支持Books)
  • Json ( 支持Books)
  • Yaml (支持 Books)
  • Pandas DataFrames
  • Csv
  • Html
  • Jira
  • Tsv
  • Ods
  • Dbf
  • Dict

我們演示一下,其中幾種數(shù)據(jù)格式,如下:

執(zhí)行上述代碼,輸出結(jié)果為:


數(shù)據(jù)導(dǎo)出

終于介紹到,讓我激動不已的數(shù)據(jù)導(dǎo)出了,簡單而優(yōu)雅,通用而高效。

導(dǎo)出 dataset_o.xlsx 文件如下:


使用DataBook 導(dǎo)出多頁數(shù)據(jù)

導(dǎo)出 dataset_ot.xlsx 文件如下:


本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
n種方式教你用Python讀寫Excel等數(shù)據(jù)文件
推薦:6款Python 實用又好用的特殊文本格式處理庫
如何利用 Python 讀取數(shù)據(jù)科學(xué)中常見幾種文件?
Pandas學(xué)習(xí)筆記(一)
Python數(shù)據(jù)可視化編程實戰(zhàn)——導(dǎo)入數(shù)據(jù)
一文看懂用R語言讀取Excel、PDF和JSON文件(附代碼)
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服