使用重复项在Python中列出索引

时间:2015-03-07 09:37:00

标签: python list

我有一个包含多个重复项目的数字列表:

list1 = [40, 62, 0, 5, 8, 3, 62]

包含相应单词的单词列表:

list2 = ['cat', 'dog', 'turtle', 'fox', 'elephant', 'eagle', 'scorpion']

即。有40只猫,62只狗等。

以上数据仅供表示。 list1中的每个值都在list2中分配了与索引对应的英语字典单词,即第一个列表的索引0对应于第二个列表的索引0。

我如何确定在for循环中,如果我调用list1.index(i),其中i为62,它将首先返回eagle,然后当再次执行for循环时,它将跳过第62个,然后进入第二个62并返回我的蝎子?

1 个答案:

答案 0 :(得分:4)

  1. 你可以zip两个项目并一起迭代以获得相应的值,就像这样

    >>> for number, word in zip(list1, list2):
    ...     print(number, word)
    ...     
    ... 
    40 cat
    62 dog
    0 turtle
    5 fox
    8 elephant
    3 eagle
    62 scorpion
    
  2. 或者您可以使用enumerate从正在迭代的列表中获取项目的当前索引,并使用索引从其他列表中获取相应的值

    >>> for index, number in enumerate(list1):
    ...     print("index :", index, number, list2[index])
    ...     
    ... 
    index : 0 40 cat
    index : 1 62 dog
    index : 2 0 turtle
    index : 3 5 fox
    index : 4 8 elephant
    index : 5 3 eagle
    index : 6 62 scorpion