編寫高質量的Python代碼系列(四)之元類及屬性

  元類(metaclass)及動態屬性(dynamic attribute)都是很強大的Python特性,而後他們也可能致使及其古怪、及其忽然的行爲。本節講解這些機制的常見用法,以確保各位程序員寫出來的代碼符合最小驚訝原則(rule of least surprise)。程序員

  • 第二十九條:用純屬性取代get和set方法get

  • 第三十條: 考慮用@property來代替屬性重構ast

  • 第三十一條:用描述符來改寫須要複用的@property方法class

  • 第三十二條:用__getattr__、__getattribute__和__setatr__實現按需生成的屬性重構

  • 第三十三條:用元類來驗證子類meta

  • 第三十四條:用元類來註冊子類程序

  • 第三十五條:用元類來註解類的屬性方法

 

第二十九條:用純屬性取代get和set方法

 

第三十條: 考慮用@property來代替屬性重構

 

第三十一條:用描述符來改寫須要複用的@property方法

 

第三十二條:用__getattr__、__getattribute__和__setatr__實現按需生成的屬性

 

第三十三條:用元類來驗證子類

 

第三十四條:用元類來註冊子類

 

第三十五條:用元類來註解類的屬性

相關文章
相關標籤/搜索