Python全栈(四)高级编程技巧之4.元类编程、迭代器和生成器
文章目录 一、__getattr__和__getattribute__魔法函数 二、属性描述符 1.属性描述符分析 2.属性查找顺序 三、自定义元类 1.动态创建类 2.使用type创建类 四、metaclass属性 五、迭代器和生成器 1.迭代器 2.生成器 应用:生成器读取大文件 一、__getattr__和__getattribute__魔法函数 from datetime import date class User : def __init__ ( self , name , birthday ) : self . name = name self . birthday = birthday if __name__ == "__main__" : user = User ( "corley" , date ( year = 2020 , month = 1 , day = 1 ) ) print ( user . name ) 打印 corley 当打印不存在的属性时,会报错: from datetime import date class User : def __init__ ( self , name , birthday ) : self . name = name self . birthday = birthday if __name__ == "__main