gpt4 book ai didi

python - 属性错误: 'property' object has no attribute

转载 作者:行者123 更新时间:2023-12-02 17:17:44 24 4
gpt4 key购买 nike

Python (2.6) 似乎无缘无故地被破坏了,有人能看出这段代码有问题吗?

class DB ():
def doSomething (self, str):
print str

class A ():
__db = DB()

@staticmethod
def getDB ():
return A.__db

db = property(getDB)


A.db.doSomething("blah")

失败但有异常(exception):

AttributeError: 'property' object has no attribute 'doSomething'

据我所知,属性在访问时会自动运行其 getter,那么为什么它会提示属性对象,为什么它找不到我明确可用的方法?

最佳答案

除了需要从对象继承之外,属性仅适用于实例。

a = A()
a.db.doSomething("blah")

要使属性在类上起作用,您可以定义元类。 (类是元类的实例,因此元类上定义的属性适用于该类,就像类上定义的属性适用于该类的实例一样。)

关于python - 属性错误: 'property' object has no attribute,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13867172/

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