1、__dict__属性:
内置数类型没有__dict__属性;每个类都有自己的__dict__属性,里面存放类变量和类函数,即使存在继承关系,父类的__dict__属性不影响子类的__dict__属性,子类和父类的__dict__属性中分别存放自己的类变量和类函数;每个对象也有自己的的__dict__属性,里面只存放实例变量。
Generally speaking, instance variables are for data unique to each instance and class variables are for attributes and methods shared by all instances of the class。
2、python中的importlib.import_module(模块路径)方法可以在函数中动态导入模块,“模块路径”用.来连接。
3、__name__:
Python中的模块(.py文件)在创建之初会自动加载一些内建变量,__name__就是其中之一。Python模块中通常会定义很多变量和函数,这些变量和函数相当于模块中的一个功能,模块被导入到别的文件中,可以调用这些变量和函数。那么这时 __name__ 的作用就彰显了,它可以显示一个模块的某功能是被自己执行还是被别的文件调用执行.如果模块执行了自己定义的功能,那么 __name__=='__main__',如果模块调用执行了别的模块的功能,那么__name__=='A'(被调用模块的名字)
基于此特性,为测试驱动开发提供了很好的支持,我们可以在每个模块中写上测试代码,这些测试代码仅当模块被Python直接执行时才会运行,代码和测试完美的结合在一起。
4、__init__().py:
python中包的概念:
5、ABC
6、静态方法、类方法、实例方法
7、__class__属性:
实例调用__class__属性时会指向该实例对应的类