我想要__list__的属性?

时间:2018-03-11 14:43:19

标签: python list class

我有一个类继承者,其中包含一系列后继者。 [1,2,3,4]

node_successors = Successors()

将类分配给变量时,例如:

neigbour = node_successors

我希望将邻居设置为我在类中存储的列表(例如,无需调用get_successor_list()

类似于:

def __str__(self):
    return "This class can be used as a string now"

2 个答案:

答案 0 :(得分:0)

也许对您阅读Python3参考文档中的这一部分很有帮助:Emulating container types

以您的示例为例,您似乎想从对象(而不是属性)中获取列表,您可以这样做:

  • 如果要从对象提取列表,则可以实现the iterator protocol__iter__())。然后,您可以list(yourInstance)
  • 或者,您也可以实现bound indexing__len__()__getitem__())。
  • neighbour = node_successors.get_successor_list()(如果此函数返回列表)。

答案 1 :(得分:-1)

您可以在班级中创建全局列表。

class SomeClass:

    global some_list
    some_list = []

some_list.append('x')

print(some_list)