+ -
当前位置:首页 → 问答吧 → 关于class实例的一个问题

关于class实例的一个问题

时间:2011-01-14

来源:互联网


定义了一个类,如下:

class Node:  
  __heads = []  
  def addHeadLine(self, line):  
  self.__heads = [line]  
  def getHeads(self):  
  return self.__heads  

if __name__ == '__main__':
  n = Node()
  m = Node()
  n.addHeadLine('aaa')
  m.addHeadLine('bbb')
  print m.getHeads(), n.getHeads()

在上面的代码中,m和n最后的__heads值是一样的,就是说m和n共享了存储空间。本意是希望m和n相互独立,不知应该如何做到?刚刚接触python,不太明白,请高手指教,谢谢!

作者: snowfeild   发布时间: 2011-01-14

看不太懂 不好意思···

作者: jamelee   发布时间: 2011-01-14

在__init__里初始化:self.__heads = []

作者: iambic   发布时间: 2011-01-14

另外自己的成员最好不要用双下划线。用单下划线比较好,避免和系统的冲突。

作者: iambic   发布时间: 2011-01-14