gpt4 book ai didi

python - 我可以列出 python 中的方法吗?

转载 作者:行者123 更新时间:2023-12-01 05:19:19 25 4
gpt4 key购买 nike

我所拥有的是一个类的每个实例一个不同的方法。所以我想要的是当我创建该类的一个新实例时能够以某种方式选择该实例将调用哪个方法。我是一个完全的新手python,我想知道我是否可以有一个方法列表和每个实例来调用此列表中的特定方法。这可能吗?

我做了一些搜索并找到了 http://docs.python.org/2/library/inspect.html (检查模块)但我很困惑。

最佳答案

在Python中,函数是第一类对象。因此,您可以直接传递函数作为参数。如果您已经定义了函数 f(x)、g(x)、h(x),则可以创建类方法

def set_function(self, external_function):
self.F = external_function

然后您可以使用 object.F(x),就像它已在类中定义一样。

但是,属于同一类的对象具有不同的方法是糟糕的设计。如果同一类的对象有不同的行为,那么它们可能一开始就应该属于不同的类。更好的方法是对原始类进行子类化,在子类中定义不同的函数,然后实例化相应的对象。

关于python - 我可以列出 python 中的方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22683611/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com