📜  Python|在矩阵中搜索元素

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

Python|在矩阵中搜索元素

Python支持列表作为其列表元素,因此可以形成矩阵。有时我们可能有一个实用程序,我们需要在该列表中执行搜索,即矩阵,它在所有编码领域中非常常见。让我们讨论可以执行此操作的某些方式。

方法 #1:使用any() + 列表推导
any函数可用于执行 if 条件的任务,并且可以使用列表推导计算对嵌套列表中每个元素的检查。

# Python3 code to demonstrate
# Search in Matrix
# using any() + list comprehension
  
# initializing list
test_list = [[4, 5, 6],
             [10, 2, 13],
             [1, 11, 18]]
  
# printing original list 
print("The original list : " + str(test_list))
  
# using any() + list comprehension
# to Search in Matrix
res = any(13 in sub for sub in test_list)
  
# printing result
print("Is 13 present in Matrix ? : " + str(res))
输出 :
The original list : [[4, 5, 6], [10, 2, 13], [1, 11, 18]]
Is 13 present in Matrix ? : True

方法#2:使用set.issubset() + itertools.chain()
issubset 方法可用于检查子列表中的成员资格,而链函数可用于对矩阵中的每个元素执行此任务,因为它在迭代器上工作时速度更快。

# Python3 code to demonstrate
# Search in Matrix
# using set.issubset() + itertools.chain()
from itertools import chain
  
# initializing list
test_list = [[4, 5, 6],
             [10, 2, 13],
             [1, 11, 18]]
  
# printing original list 
print("The original list : " + str(test_list))
  
# using set.issubset() + itertools.chain()
# to Search in Matrix
res = {13}.issubset(chain.from_iterable(test_list))
  
# printing result
print("Is 13 present in Matrix ? : " + str(res))
输出 :
The original list : [[4, 5, 6], [10, 2, 13], [1, 11, 18]]
Is 13 present in Matrix ? : True