Python-\uuuu get\uuuuuuuuuuuuuuu不是为我的类调用的
这是我的密码:Python-\uuuu get\uuuuuuuuuuuuuuu不是为我的类调用的,python,python-descriptors,Python,Python Descriptors,这是我的密码: class Argument : def __init__( self, argType, argHelp = None ) : self.type = argType self.help = argHelp def __get__(self, obj, type=None): print("__get__") return self.type a = Argument( "my_ret_valu
class Argument :
def __init__( self, argType, argHelp = None ) :
self.type = argType
self.help = argHelp
def __get__(self, obj, type=None):
print("__get__")
return self.type
a = Argument( "my_ret_value" , argHelp = "some help text " )
我想让它返回我的返回值,但我得到:
<__main__.Argument instance at 0x7ff608ab24d0>
我已经读过了,如果我修改代码以使其正常工作,那么为什么我不能在我的课堂上这样做呢?还有别的办法吗
编辑:
谢谢你的评论,我不太明白。能解决我的问题吗
我想要的是,我正在将一个字符串值更改为一个对象,我想将此对象视为一个字符串,并具有一些额外的属性。您可以使用decriptor类,如下所示:
class B:
a = Argument("my_ret_value", argHelp="some help text")
b = B()
b.a
# __get__
# 'my_ret_value'
当在另一个类上设置为class属性并通过所述类的实例访问时,则调用描述符的\uuuu get\uuuu
方法。请参见。您试过了吗?:<代码>a.\uuuu get\uuuuu()
可能是重复的谢谢,我可以试试!如果我想使用单个类,也许我可以通过重写\uuuu repr\uuu
来访问它?你能检查我的编辑吗?