Вот пример, чтобы проверить, есть ли товар в вашем списке покупок. Модифицированная версия может быть использована для поиска предметов по имени. Я бы порекомендовал добавить уникальный идентификатор для каждого предмета покупок, потому что имена могут частично совпадать.
def checkInShoppingList(shopping_list, product):
in_list = False
for item in shopping_list:
print(item)
if item[0] == product[0]: #Checks each item in list and see if name is a match
print('Item is in list')
in_list = True
break #So it won't iterate through rest of shopping list
if not in_list:
shopping_list.append(product) #Add item to list
return shopping_list
shopping_list = [('item1','3.50', '2', 'shop1')]
product = ('item2', '3' , '1', 'shop1')
shopping_list = checkInShoppingList(shopping_list, product)
product = ('item2', '3' , '1', 'shop1')
newList = checkInShoppingList(shopping_list, product) #Test to add same item again
print('New Shopping list:', newList)
Онлайн-компилятор Python
Я бы также порекомендовал сделать каждый продукт в массиве словарем