Вложенный для цикла Итерация - PullRequest
0 голосов
/ 01 июня 2019

Я новичок в python и пытаюсь открыть файл и напечатать строку, которая соответствует двум значениям (одно значение из списка, а второе значение является статическим значением).Я получаю ожидаемый результат для первой итерации, но похоже, что цикл for не выполняет никаких других итераций.

Ниже приведен код:

text_file = open(Path, 'r')
list_1 = ['One', 'Two', 'Three']
static_value = 'Test'

for term in list_1:
    for line in text_file:
        if term in line and static_value in line:
            print(line)

Пример содержимого файла:

Один

Один тест

Два

Два теста

Три

Три теста

1 Ответ

2 голосов
/ 01 июня 2019

Это возможно, если вы поменяете местами петли for.Более элегантный способ - использовать any() для проверки соответствия следующим образом:

for line in text_file:
    if any(term in line for term in list_1) and static_value in line:
        print(line)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...