我是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"
。我的代码有问题吗?
请注意,我不是要找到代码的索引。我想搜索代码是否在数组中。
答案 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']]
>>>