1. 程式人生 > >原始碼閱讀筆記——Tablib

原始碼閱讀筆記——Tablib

文章目錄

Tablib

Tablib是一個支援多格式資料轉換的庫,支援的格式包括XLSX、XLS、JSON、YAML、DBF、CSV、TSV、HTML等

用法示例

在這裡插入圖片描述

程式碼結構

  • tablib
    • tablib
    • README.rst
    • requirements.txt
    • setup.py
    • test_tablib.py
    • docs
    • 其他檔案

程式碼結構與風格

  • 對於不同格式的支援,單獨建立了一個資料夾,裡面包含對不同格式匯入匯出的方法,在建立類時,通過property函式將支援的檔案格式的匯入匯出方法註冊到例項的屬性中
  • 使用@property實現只讀的方法
  • 使用__slots__節省記憶體
  • 運算子過載[],通過實現__getitem__、setitemdelitem

細節

  • Dataset作為Row的整合
  • Dataset的__init__(self, *args, *kwargs)方法,args接受各列,kwargs接受一些其他屬性,使用kwargs.get得到

Reference

[1]《Python程式設計之美》