我需要一个物体来做任何事

2024-10-01 17:28:50 发布

您现在位置:Python中文网/ 问答频道 /正文

或者至少,假装做任何事。你知道吗

>>> three = Three()
>>> three.value()
3
>>> three.sqrt()
3
>>> three.close()
3
>>> three.someRandomFunctionWithMadeUpParameters("hello, world", math.PI, True)
3
>>> three.stopSayingThreeDamnIt()
3

有没有可能在Python2.6中实现类Three?你知道吗


Tags: truehelloworldclosevaluepimathsqrt
2条回答
class Three(object):
    def __getattr__(self, name):
        return lambda *args, **kw: 3
class MetaThree(type):
    def __repr__(cls):
        return '3'
    def __getattr__(cls,key):
        return Three

class Three(object):
    __metaclass__=MetaThree
    def __init__(self,*args,**kwargs):
        pass
    def __call__(self):
        return Three
    def __getattr__(self,key):
        return Three
    def __repr__(self):
        return '3'

three=Three()
print(three.value())
# 3
print(three.someRandomFunc('hello'))
# 3
print(three.someRandomFunc)
# 3
print(three.someRandomFunc.foo.bar)
# 3
print(three()()())
# 3

相关问题 更多 >

    热门问题