Сравните каждый элемент в списке с каждым элементом в другом списке - PullRequest
0 голосов
/ 27 апреля 2020

У меня есть два списка, words = ["hello", "how", "hello", "are", "you"] и match = ["hello, "sonic"]. Как мне сравнить таким образом, чтобы, если первый элемент в совпадении был таким же, как первый элемент в словах и (то же самое для второго, третьего и т. Д. c), то добавить 'true' в другой список?

Так что для перечисленных выше списков я бы хотел results = ["true", "false", true", "false", "false"]. В настоящее время у меня есть следующее, но это только добавляет true и никогда false. Я знаю, что это потому, что оператор else никогда не выполняется, поскольку 'hello' всегда находится в words[]. Я знаю, что я довольно далеко от цели.

for i in match:
    if i in words:
        results.append('true')
    else:
        results.append('false')

Надеюсь, я хорошо это объяснил.

1 Ответ

3 голосов
/ 27 апреля 2020

Попробуйте использовать синтаксис python "in":

match = ["hello", "sonic"]
words = ["hello", "how", "hello", "are", "you"]
results = [w in match for w in words]

или, если вы хотите, чтобы строки "true" или "false"

results = [str(w in match).lower() for w in words]
...