Skip to main content
 首页 » 编程设计

Python 列表索引超出范围

2025年05月04日10Terrylee

我在用 Python 填充列表时遇到了一些问题。我不断收到列表索引超出范围的错误。 len(network) 的输出是 7,所以我认为从 0-6 填充它应该可以给我一个 7x7 列表。

def fillNodeTable(): 
  nodeTable = [] 
  for x in xrange(0, (len(network) -1)): 
    for y in xrange(0, (len(network) -1)): 
      nodeTable[x][y].append(Node) 
  print nodeTable 

所以我最终得到了这个并且它有效

n = len(network) 
nodeTable = [[Node]*n for x in xrange(n)] 

当我打印要调试的 nodeTable 时,我得到以下信息:

<class __main__.Node at 0xb737914c> 

这仅仅是因为我在每个条目上附加了一个类还是我在这里做错了什么?

请您参考如下方法:

我认为你可以使用列表理解,因为它会更清晰:

nodeTable = [[Node for x in network] for y in network]