在 Python 中查找给定列表中具有 None 值的索引

pythonserver side programmingprogramming更新于 2025/10/11 12:28:17

在处理数据分析时,我们经常会遇到列表中存在的 None 值。这些值不能直接用于数学运算和字符串运算等。所以我们需要找到它们的位置并转换它们或有效地使用它们。

使用 range()

结合 range 和 len 函数,我们可以将每个元素的值与 None 进行比较并捕获它们的索引位置。当然,我们使用 for 循环设计来实现这一点。

示例

listA = ['Sun', 'Mon',None, 'Wed', None, None]

# 给定列表
print("给定列表: ",listA)

# 使用 range
positions = [i for i in range(len(listA)) if listA[i] == None]

# 结果
print("None value positions : ",positions)

输出

运行上述代码得到以下结果 −

给定列表: ['Sun', 'Mon', None, 'Wed', None, None]
None value positions : [2, 4, 5]

使用 enumerate()

我们还可以使用枚举函数,列出每个元素。然后我们将每个元素与 None 值进行比较,并选择其位置,如程序中所示。

示例

listA = ['Sun', 'Mon',None, 'Wed', None, None]

# 给定列表
print("给定列表: ",listA)

# 使用枚举
positions = [i for i, val in enumerate(listA) if val == None]

# 结果
print("None value positions : ",positions)

输出

运行上述代码得到以下结果 −

给定列表: ['Sun', 'Mon', None, 'Wed', None, None]
None value positions : [2, 4, 5]

相关文章


有用资源