为什么以下代码在我添加了几个项后返回空?
class Con(list):
def __init__(self): pass
def __str__(self):
return ' '.join(self)
def add(self, value)
self.append(value)
i for i in range(10):
Con().add(i)
>>> print Con()
# empty space instead of:
0 1 2 3 4 5 6 7 8 9
Run Code Online (Sandbox Code Playgroud)
我还要为我的班级定义什么才能像列表一样行事?
您通过循环每次Con调用创建11个实例,Con()并在打印时再次调用.
你想要的东西:
c = Con()
for i in range(10):
c.add(i)
print c
Run Code Online (Sandbox Code Playgroud)