显示列表中每个字符串的索引

时间:2019-02-13 00:39:55

标签: python

我希望在列表中找到每个整数的索引(由于不知道其他替代方式,我将其转换为字符串)。

例如,我有一个列表:

a = [0,3,3,7,5,3,11,1] # My list
a = list(map(str, a)) # I map it to string for each integer in the list, is there any better way than this? I would like to learn

for x in a: # I then loop each str in the list
    print(a.index(x)) # here I print each index of the str

我的输出是:

0
1
1
3
4
1
6
7

我的预期输出应该是:

0
1
2
3
4
5
6
7

3 个答案:

答案 0 :(得分:1)

我认为您正在寻找enumerate()

a = ['apple', 'ball', 'cat']

for i, it in enumerate(a):
    print(i)

>>> output
0
1
2

答案 1 :(得分:1)

.index()并不用于显示其原始索引,而是用于显示与您传递的值匹配的第一个索引。

您可以使用enumerate获取列表中的索引和值。

a = [0,3,3,7,5,3,11,1]
for index, value in a:
    print('{} {}'.format(index, value))

并且不确定为什么要将a转换为字符串列表而不是整数吗?

答案 2 :(得分:1)

您可以使用Python的内置函数enumerate()

您可以这样做:

a = [0,3,3,7,5,3,11,1] 

for index, element in enumerate(a):
    print index

输出应为:

0
1
2
3
4
5
6
7

您可以查看此link中的文档。