如何在python中搜索2D数组

时间:2016-05-16 10:34:23

标签: python arrays search arraylist multidimensional-array

我是Python的初学者,我想在2D数组中搜索。

stock_file = [[21345678, 2.30, "Banana"], [12345670, 3.50, "Apple"]]

我希望用户输入一个八位数代码,然后输出"product found"(如果它在数组中)。我尝试了以下代码:

if eight_digit_code in stock_file:
    print("Product found")
else:
    print("product not found")

但是,即使代码与数组中的代码匹配,代码也不会输出"product found"。我的代码有问题吗? 请注意,我不是要找到代码的索引。我想搜索代码是否在数组中。

1 个答案:

答案 0 :(得分:0)

您可以使用以下内容:

>>> stock_file = [[21345678,2.30,'Banana'],[12345670,3.50,'Apple']]
>>> code=int(input('Enter 8 digit code: '))
Enter 8 digit code: 12345670
>>> list(filter(lambda x:x[0]==code, stock_file))
[[12345670, 3.5, 'Apple']]
>>> code=int(input('Enter 8 digit code: '))
Enter 8 digit code: 21345678
>>> list(filter(lambda x:x[0]==code, stock_file))
[[21345678, 2.3, 'Banana']]
>>>