У меня есть список слов, которые я хотел бы отфильтровать с помощью другого списка, но у меня возникли проблемы с функцией filter()
list_of_dicts = [{'name': 'Bob'},{'name': 'Alice'},{'name':'Jenny'}]
list_2 = ['Bo', 'Alic']
# filter(lambda name: any(list2) in list_of_dicts['name'], list_of_dicts)
Ideally, I would want above to return:
[{'name': 'Bob'},{'name': 'Alice'}]
or the converse
# filter(lambda name: any(list_2) not in list_of_dicts['name'], list_of_dicts)
[{'name':'Jenny'}]
Здесь требуется использовать функцию filter(). Кроме того, я пытаюсь проверить, содержится ли list2 в виде подстроки list_of_dicts['name']
Cell In[8], line 1, in (name)
----> 1 list(filter(lambda name: any(list_2) in list_of_dicts['name'], list_of_dicts))
TypeError: list indices must be integers or slices, not str
Подробнее здесь: https://stackoverflow.com/questions/785 ... -in-python