检查Python中列表的列表中是否存在元素
列表可以嵌套,这意味着列表的元素本身就是列表。在本文中,我们将了解如何找出给定元素是否存在于子列表中,而子列表本身是更大列表中的元素。
使用任何方法
我们首先搜索子列表中是否存在元素,以及子列表是否存在于列表中。如果两者中的任何一个为真,我们可以说该元素存在于列表中。
示例
listA = [[-9, -1, 3], [11, -8],[-4,434,0]]
search_element = -8
# Given list
print("Given List :\n", listA)
print("Element to Search: ",search_element)
# Using in
if any(search_element in sublist for sublist in listA):
print("Present")
else:
print("Not Present")输出
运行以上代码,得到以下结果:
('Given List :\n', [[-9, -1, 3], [11, -8], [-4, 434, 0]])
('Element to Search: ', -8)
Present使用“in”运算符
在这种方法中,我们使用“in”运算符进行简单的搜索。如果项目是子列表的一部分,而子列表也是外部列表的一部分,那么我们将接受该元素存在。我们进行两次检查,一次检查存在,另一次检查不存在。
示例
listA = [[-9, -1, 3], [11, -8],[-4,434,0]]
search_element = -8
# Given list
print("Given List :\n", listA)
print("Element to Search: ",search_element)
# Using in
if search_element in (item for sublist in listA for item in sublist):
print("Present")
else:
print("Not Present")
search_element = 13
print("New Element to Search: ",search_element)
# Using in
if search_element in (item for sublist in listA for item in sublist):
print("Present")
else:
print("Not Present")输出
运行以上代码,得到以下结果:
Given List : [[-9, -1, 3], [11, -8], [-4, 434, 0]] Element to Search: -8 Present New Element to Search: 13 Not Present
使用chain方法
使用itertools模块中的chain方法,我们可以展开子列表的列表,并使用in方法继续检查元素的存在。
示例
from itertools import chain
listA = [[-9, -1, 3], [11, -8],[-4,434,0]]
search_element = -8
# Given list
print("Given List :\n", listA)
print("Element to Search: ",search_element)
# Using in
if search_element in chain(*listA):
print("Present")
else:
print("Not Present")
search_element = 13
print("New Element to Search: ",search_element)
# Using in
if search_element in chain(*listA):
print("Present")
else:
print("Not Present")输出
运行以上代码,得到以下结果:
Given List : [[-9, -1, 3], [11, -8], [-4, 434, 0]] Element to Search: -8 Present New Element to Search: 13 Not Present
广告
数据结构
网络
关系数据库管理系统(RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP