首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python默认的‘通配符’函数-可能吗?

Python默认的‘通配符’函数-可能吗?
EN

Stack Overflow用户
提问于 2021-05-29 17:57:41
回答 1查看 66关注 0票数 0

这是我的类代码:

代码语言:javascript
复制
class Example:
    def __init__(self):
        self.parameter1 = 1
    
    def standardFunction(self):
        print("Hello")

是否可以初始化Example类并确保为该特定实例调用的每个方法都指向standardFunction

例如:

代码语言:javascript
复制
ex1 = Example()
ex1.test1()

印刷品“你好”

代码语言:javascript
复制
ex1.test2()

印刷品“你好”

代码语言:javascript
复制
ex1.test3.test4()

印刷品“你好”

代码语言:javascript
复制
ex1.test5().test6().IamBatman(42)

印刷品“你好”

基本上,我希望总是调用Example.standardFunction(),而忽略了第一个“点”之后的字符串。另外,我不知道在点后面放什么--它可能是任何字符串、int、float或null。

用Python可以实现这样的行为吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-05-29 18:11:06

是的,我们可以通过重载__getattr__来实现类似的行为。像这样,

代码语言:javascript
复制
class Example:
    def __init__(self):
        self.parameter1 = 1
    
    def standardFunction(self):
        print("Hello")

    def __getattr__(self, name):
        return self.standardFunction
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67754370

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档