上节课程回顾:
静态变量:与类无关,不能访问类里的任何属性和方法。
类方法:只能访问类变量。
属性:把一个方法变成静态属性,
反射:
__new__:先于__init__执行;
__call__:
1 class Foo(object): 2 def __call__() 3 print "call" #这是什么??? 4 5 #Foo() #后面跟一个括号是实例化 6 Foo()() #后面跟2个括号是执行call方法
异常处理:
断言(assert): 返回为假就不往下执行了。(例如银行转账,要确保正确才能转账)
例如:assert type(XXX) is str
本节内容:
一.动态导入模块
1 import importlib
2
3 __import__('import_lib.metaclass') #这是解释器自己内部用的
4 #importlib.import_module('import_lib.metaclass') #与上面这句效果一样,官方建议用这个
#__metaclass__用来定义这个类以怎样的形式被创建(我们很少用到)