在按名称调用Python类实例时,设置其返回值

时间:2017-10-10 21:47:54

标签: python class

我有一个属性为_mylist的Python类。我希望MyClass的实例在我按名称调用时返回_mylist。以下是我想要定义的基本概念,然后是示例输入和输出。

class MyClass:
    def __init__(self, a, b):
        self._mylist = [a, b]

    def _returnlist(self):
        # method conferring MyClass with the property that calls to class
        # instances returns self._mylist 
        pass


>>> mc = MyClass(a, b)
>>> mc  # the desired property: call to mc returns mc._mylist
[a, b]
>>> k = mc  # assignment from mc instance only assigns mc._mylist
>>> k
[a, b]

有没有一种标准方法可以为这个属性提供一个类?

1 个答案:

答案 0 :(得分:2)

这不可能。与C ++不同,Python没有为您提供重载k = mc含义的方法,以便将k设置为mc._mylist。在Python中,k = mc始终将k设置为mc