我正在尝试组合一个类似stringIO的函数,我想知道是否有可能构建一个捕获所有可能方法的类,以便以下方法可以工作:
a = magicclass("Hello World!") #Hello world would be the return
print a() #Would print Hello world
print a.read() #should also print hello world
print a.adsf.asdf.xyz.random() #should also print hello world
我真的不知道该怎么做,我可以定义所有可能调用的方法,但是如果我想把它传递给一个黑盒函数,那就有问题了。你知道吗
#This works, but only for the main method.
#Every submethod has to have its own class defined, if you know what I mean.
def emptyreturnfunc(returnval): lambda: returnval
b = emptyreturnfunc("Hello World")
print b() #Does work
print b.asdf() #Doesn't work.
当然,我知道这是为什么,但我怎样才能让它发挥作用呢?有什么提示吗?你知道吗
如果您查看Mock library,您将看到一个基本上实现了我认为您正在寻找的模式的示例。然而,在模拟库之外,这是有点危险的行为。你知道吗
相关问题 更多 >
编程相关推荐