Вы можете установить логический флаг, например, "found = True";
и сделайте проверку на наличие == True, и если это так, выведите строку.
Код ниже:
search_term = r'\b%s\b' % search_term
found = False;
for line in open(f, 'r'):
if found==True:
print line,
elif re.match(search_term, line):
found = True;
print line,
Чтобы объяснить это немного: с логическим флагом вы добавляете некоторое состояние в ваш код, чтобы изменить его функциональность. То, что вы хотите, чтобы ваш код делал, зависит от того, нашли ли вы определенную строку текста в вашем файле или нет, поэтому лучший способ представить такое двоичное состояние (я нашел строку или не нашел ее?) С помощью переменная типа boolean, и затем код выполняет разные действия в зависимости от значения переменной.
Кроме того, elif
- это просто сокращение else if
.