При переборе файла и поиске вхождений нескольких слов в файле. Я написал понимание списка, пытаясь сохранить совпадающие слова в списке для каждой прочитанной строки.
search_strings = ["happy", "sad", "between"]
fio = open("text.txt", encoding="utf-8")
# reading file and trying to find occurences of search_string in text file
for line in fio:
# first attempt: not what I wanted
found_list_1 = [word in line for word in search_string]
# second attempt: what I wanted
found_list_2 = [word for word in search_string if word in line]
fio.close()
Результат распечатки обоих составленных списков:
found_list_1 дает мне логические значения при распечатке
[True, False, False]
found_list_2 возвращает строку, найденную в каждой строке, прочитанной из файла.
["happy"]
Я пытаюсь понять поведение понимания списка в found_list_1, почему он возвращает логические значения вместо совпадающих слов?