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

📅  最后修改于: 2022-05-13 01:55:06.055000             🧑  作者: Mango

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

很多时候,在数据科学领域工作时,我们需要获取所有为None的索引的列表,以便它们可以很容易地被预先占有。这是一个非常流行的问题,它的解决方案非常方便。让我们讨论一些可以做到这一点的方法。

方法 #1:使用列表理解 + range()
在这种方法中,我们只需使用 range函数检查每个索引,如果发现索引为 None,则存储该索引。

# Python3 code to demonstrate
# finding None indices in list 
# using list comprehension + enumerate
  
# initializing list 
test_list = [1, None, 4, None, None, 5]
  
# printing original list
print("The original list : " + str(test_list))
  
# using list comprehension + enumerate
# finding None indices in list 
res = [i for i in range(len(test_list)) if test_list[i] == None]
  
# print result
print("The None indices list is : " + str(res))
输出 :
The original list : [1, None, 4, None, None, 5]
The None indices list is : [1, 3, 4]

方法 #2:使用列表理解 + enumerate()
enumerate函数可用于将键和值对迭代在一起,列表推导可用于将所有这些逻辑绑定在一行中。

# Python3 code to demonstrate
# finding None indices in list 
# using list comprehension + enumerate
  
# initializing list 
test_list = [1, None, 4, None, None, 5]
  
# printing original list
print("The original list : " + str(test_list))
  
# using list comprehension + enumerate
# finding None indices in list 
res = [i for i, val in enumerate(test_list) if val == None]
  
# print result
print("The None indices list is : " + str(res))
输出 :
The original list : [1, None, 4, None, None, 5]
The None indices list is : [1, 3, 4]