Python列表索引,用于查找索引元素的编号(如果元素相同)



我试图为列表中的多个项目找到索引版本,例如

testarray = ["l","hello","l","l"]
for x in testarray:
if x == "l":
print(testarray.index(x))

我希望所需的输出是1, 3, 4,但我得到的是1,1,1

这是因为list.index返回元素第一次出现的索引,要解决此问题,可以使用enumerate:循环遍历索引和值

testarray = ["l", "hello", "l", "l"]
for i, x in enumerate(testarray, 1):
if x == "l":
print(i)

输出:

1
3
4

在索引中的for i, x in enumerate(testarray, 1)i中,x是值,enumerate中的第二个参数1告诉它在1开始计数,而不是默认情况下在0开始计数。

最新更新