Python 接下来是什么?
我有以下代码片段和输出Python 接下来是什么?,python,metaclass,built-in,Python,Metaclass,Built In,我有以下代码片段和输出 带元类: def some(*args): return type(args) __metaclass__ = some class Foo: a = 'khkjh' print Foo.__module__ class Foo: a = 'khkjh' print Foo.__module__ 输出:内置 不带元类: def some(*args): return type(args) __metaclass__ = some
带元类:
def some(*args):
return type(args)
__metaclass__ = some
class Foo:
a = 'khkjh'
print Foo.__module__
class Foo:
a = 'khkjh'
print Foo.__module__
输出:内置
不带元类:
def some(*args):
return type(args)
__metaclass__ = some
class Foo:
a = 'khkjh'
print Foo.__module__
class Foo:
a = 'khkjh'
print Foo.__module__
输出:\uuuuuu主\uuuuuu
所以
什么是内置的
元类为什么或如何影响它?\uuuuuuuuuuuuuuu
是提供所有内置函数、异常等的模块
您将从\uuuu模块\uuuu
返回此值,因为您提供的元类本质上是将Foo
转换为元组类型:
>>> def some (*args):
... return type(args) # This returns <type 'tuple'>
...
>>> class Hmm(object):
... __metaclass__ = some
...
>>> class Foo(object):
... pass
...
>>> print Hmm
<type 'tuple'>
>>> print Foo
<class '__main__.Foo'>
>>> print tuple
<type 'tuple'>
>>> print tuple.__module__
__builtin__
>>定义一些(*args):
... 返回类型(args)#此返回
...
>>>类Hmm(对象):
... __元类=一些
...
>>>类Foo(对象):
... 通过
...
>>>打印Hmm
>>>印刷食品
>>>打印元组
>>>打印元组。\u\u模块__
__内置__
如您所见,Hmm
现在是类型tuple
。元组
类型由\uuuuuu内置
模块提供,因此您可以看到输出