python資料模型

2021-10-08 12:58:05 字數 629 閱讀 8540

參考流暢的python第一章

python資料模型定義了一些特別操作,使用者通過重寫這些特殊方法即可實現一些特別操作。

比如:

__init(

)__,我理解這個就是建構函式

__len__(

)通過重寫該函式可以實現len

()方法

__str__(

)通過重寫該函式可以實現物件字串化,即將物件以字串的形式顯示

__call__(

)通過重寫該函式,物件可以被想方法一樣被呼叫

例如在pytorch中,__call__(

)函式呼叫了__forward__,所以我們只要重寫__forward__即可,但是__call__不僅僅是在forward外面套了一層,還多加了hook機制,具體見可以參考

其它的特殊函式可見表

python 資料模型

usr bin env python coding utf 8 import collections card collections.namedtuple card rank suit class frenchdeck 通過實現特殊方法利用python資料模型的好處 1.作為你類的使用者,他們不必...

Python資料模型

1 了解python資料模型和介面的概念 2 掌握特殊方法的定義,作用和基本用法。1 資料模型 data model 是資料特徵的抽象,這裡是對python框架的描述。資料模型規範了python自身構建模組的介面,模組包括但不限於序列 迭代器 函式 類和上下文管理器。2 介面 介面泛指實體把自己提供...

Python 資料模型

資料模型規範了 python 構建自身模組的介面。在 python 直譯器遇到特殊的句法時,會使用特殊方法 即魔術方法 去啟用基本的物件操作,這些特殊方法以 開頭與結尾。通過實現特殊方法,自定義資料型別可以表現得跟內建型別一樣,從而寫出更 pythonic 的 python 物件的乙個基本要求就是有...