Python中的Overload()运算符

发布于 2021-01-29 17:04:52

我正在尝试为我的课程学习Python中的currying,并且必须为此重载()运算符。但是,我不明白如何才能重载()运算符。您能解释括号重载背后的逻辑吗?我应该先重载,然后再重载吗?另外,圆括号运算符是否有特殊名称?

关注者
0
被浏览
47
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    您可以通过实现__call__方法来使对象可调用:

    class FunctionLike(object):
        def __call__(self, a):
            print("I got called with {!r}!".format(a))
    
    fn = FunctionLike()
    fn(10)
    
    # --> I got called with 10!
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看