Python 2.7 在Python中访问字典中键值对中的第n个值

Python 2.7 在Python中访问字典中键值对中的第n个值,python-2.7,dictionary,Python 2.7,Dictionary,我有一本这种类型的python字典 Mutual={'A':[[1],[2],[],[]],'B':[[1],[],[],[]]} 我想访问键“A”的元素。 我试过这个: count=0 for z in range(2): print Mutual["A"][z][count] count+=1 我得到以下错误 IndexError: list index out of range 有人能提出为什么会这样吗。

我有一本这种类型的python字典

     Mutual={'A':[[1],[2],[],[]],'B':[[1],[],[],[]]}
我想访问键“A”的元素。 我试过这个:

     count=0
     for z in range(2):
          print Mutual["A"][z][count]
          count+=1
我得到以下错误

     IndexError: list index out of range

有人能提出为什么会这样吗。一定是我没能抓住的愚蠢错误。

运行第一次迭代时,Mutual[A][z][count]返回1。在下一次迭代中,Mutual[A][z][count]应该是列表[2]中的第二个元素,z为1,count也为1,这是不存在的。这就是为什么会出现索引器错误:列表索引超出范围错误

对代码的建议修改可以是:

 listA = Mutual["A"]
 for z in range(len(listA)):
      for w in range(len(listA[z])):
          print listA[z][w]

这样,如果内部列表的大小为零,则不会执行内部循环,因此,您不会尝试访问越界索引。

在python中,通常使用范围和索引来迭代实际元素:

for z in Mutual['A']:
    for count in z:
        print count 

如果语法正确,那么您的值就是一个1元素数组。请问。{'A':[[1][2][][2],'B':[[1][][]}是一个语法错误,你的意思是{'A':[[1],[2],[],[],[B':[[1],[],[],[],[],[]]还是其他什么?对于相互['A']中的计数:打印计数哦,是的,我只是指这个。编辑了那个@Chris_RandsI不希望列表作为输出。我想要1和2作为输出,而不是[1][2][]@Achampion请您详细说明一下。或者用密码告诉我。需要做什么样的改变。