Предполагая, что вы хотите пересечение списка ваших входов с необходимыми элементами
seek = ['Peter', 'Tom', 'Vincent']
my_inputs = ['Tom', 'David', 'David', 'Vincent', 'Sam']
len([x for x in my_inputs if x in seek]) // 2
Таким образом, в основном для каждого из ваших входов вы хотите увидеть, соответствует ли какой-либо элемент в поиске. Просто создайте такой список пересечений и сделайте len
на нем
, ваши входы могут повторяться:
seek = ['Peter', 'Tom', 'Vincent']
my_inputs = ['Tom', 'Tom', 'David', 'David', 'Vincent', 'Sam', 'Peter']
len([x for x in my_inputs if x in seek]) // 4
РЕДАКТИРОВАТЬ : хотя он показывает, насколько мощны списки в python, но требует дополнительного пробела (O (N), где N - это len (my_inputs)), в то время как решение Barmar требует O (1) дополнительного пробела, так что вам, вероятно, будет лучше с ответом Бармара.