python中列表元素虽然有下标,但是有时候需要特定的用途,查找指定的特殊值的元素的下标。
这时候可以用for循环,打印出来下标,但是每次都要写for循环,感觉还是有点麻烦。
比如这样
使用enumerate,枚举列表中的元素,
a = [1, 2, 8, None, 'test']
for i in range(len(a)):
if a[i] == None:
print(i)
for i in range(len(a)):
if isinstance(a[i], str):
print(i)
null_list = [i for i, x in enumerate(a) if x==None]
null_list
str_list = [i for i, x in enumerate(a) if isinstance(x, str)]
str_list
可以得到结果如下:

相当于enumerate多了一个索引元素。
当然也可以使用index。但是前提是index需要元素的具体值,当我们不知道元素的具体值时,就没办法。比如第四个元素'test",我们只知道是一个文本。
无法判断,不知道具体是什么文本。

本文介绍了在Python中如何使用enumerate函数和条件判断来查找列表中特定值或类型元素的下标,避免了频繁使用for循环的繁琐。通过示例展示了查找None值和字符串类型元素的下标,并对比了index方法的局限性。这种方法对于处理未知元素值的情况尤为适用。
6万+

被折叠的 条评论
为什么被折叠?



