gpt4 book ai didi

python - 如何在 python 中使用没有参数的方法?

转载 作者:行者123 更新时间:2023-11-28 21:25:28 28 4
gpt4 key购买 nike

如果我像这样定义一个类 a 和一个方法 b:(在 Python2.7 中)

class a:
def b():
print("hello")

我不能调用这个方法

 a.b()

也不是:

a_instance = a(); a_instance.b()

我的问题是:

(1)有没有办法调用b?

(2) 有没有这种用法是有意义的?

(3) 我认为 b 既不是静态方法也不是实例方法b 是一个类方法吗?如果不是,应该将什么命名为 b

最佳答案

classmethod将类对象作为第一个实例的装饰器。

Is there a way to call b?

是的,您可以将其设为静态方法或实例方法,然后相应地调用它。下面我将它设为静态方法,这样您就可以在任何实例上或直接在类对象 a

上调用它
class a:
@classmethod
def b(cls):
print("hello")

a.b() #'hello'

Is there any situation that this usage is meanful?

有什么用?静态方法?是的,这取决于您的体系结构。类方法可以用作工厂函数吗?返回类的新实例。

I think b is neither a static method nor a instance method. Is b a class method? If not, what should be named to b?

我也不认为是。我相信它只是一个在类主体内部定义的函数

我对在类中定义函数感到困惑并问了一个类似的问题 here

关于python - 如何在 python 中使用没有参数的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14183545/

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