在列表中使用index方法获取的只是第一个索引,比如想获取列表中的字符'A'
>>> lst = ['A', 1, 4, 2, 'A', 3]
>>> lst.index('A')
0
如果想获取所有'A'元素的索引列表,可以借助于下面的方法
方法一: 常用方法
>>> def get_index1(lst=None, item=''):
... tmp = []
... tag = 0
... for i in lst:
... if i == item:
... tmp.append(tag)
... tag += 1
... return tmp
>>> lst = ['A', 1, 4, 2, 'A', 3]
>>> get_index1(lst, 'A')
[0, 4]
方法二: 借助enumerate函数来获取
>>> def get_index1(lst=None, item=''):
... return [index for (index,value) in enumerate(lst) if value == item]
>>> lst = ['A', 1, 4, 2, 'A', 3]
>>> get_index1(lst, 'A')
[0, 4]
方法三:借助range函数遍历获取
>>> def get_index3(lst=None, item=''):
... return [i for i in range(len(lst)) if lst[i] == item]
>>> lst = ['A', 1, 4, 2, 'A', 3]
>>> get_index1(lst, 'A')
[0, 4]