有一段代码看不太懂,求解释
class ModelMetaclass(type):
def __new__(cls, name, bases, attrs):
if name=='Model':
print(name)
return type.__new__(cls, name, bases, attrs) #第一个return
print(name)
print('Found model: %s' % name)
mappings = dict()
for k, v in attrs.items():
if isinstance(v, Field):
print('Found mapping: %s ==> %s' % (k, v))
mappings[k] = v
for k in mappings.keys():
attrs.pop(k)
attrs['__mappings__'] = mappings
attrs['__table__'] = name
return type.__new__(cls, name, bases, attrs)
为什么 第一个return 执行完后还会往后面执行??