jbc*_*tin 3 python oop reflection class
我有两个问题.
>>> class One(object):
... pass
...
>>> class Two(object):
... pass
...
>>> def digest(constr):
... c = apply(constr)
... print c.__class__.__name__
... print constr.__class__.__name__
...
>>> digest(Two)
Two
type
Run Code Online (Sandbox Code Playgroud)
如何创建对象'Two'?constr()或c()都不起作用; 似乎apply将它变成了一种类型.
将类和实例传递给方法时会发生什么?
类是高级对象,因此您可以像这样简单地传递它们:
def createMyClass ( myClass ):
obj = myClass()
return obj
class A ( object ):
pass
>>> x = createMyClass( A )
>>> type( x )
<class '__main__.A'>
Run Code Online (Sandbox Code Playgroud)