我试图使用type
和setattr
动态定义一个类及其方法。但是,当我尝试使用inspect.getsource打印类的内容时,它找不到类定义。我错过了什么
我希望最后一行可以打印class NewTest(): def prt(self): print("test") def requires(self): return 'success'
import inspect
class test():
def prt(self):
print("test")
def method1(cls):
return 'success'
klass = type('NewTest', (test,), {})
setattr(klass, 'requires', classmethod(method1))
print(inspect.getsource(test)) #'class test(): def prt(self): print("test")'
print(inspect.getsource(klass)) # {OSError}could not find class definition
目前没有回答
相关问题 更多 >
编程相关推荐