import os NUMBER_OF_INVOICES = 10 DIR = os.path.dirname(__file__) PHRASE = "pies" def join_path(filename: str) -> str: return os.path.join(DIR, filename) with open( join_path("polish_wiki_excerpt.in"), "r", newline="", encoding="utf8" ) as file: text = file.readlines() def not_in(letter, set): for i in set: if i == letter: return False return True def find_me(): for j in range(len(PHRASE)): if line[i + j] != PHRASE[j] and line[i + j] != PHRASE[j].capitalize(): return False if not_in(line[i - 1], [" ", "\n"]): return False if not_in(line[i + len(PHRASE)], [" ", "\n", "\r"]): return False return True found = True phrase_array_slow = [] for ind, line in enumerate(text): for i in range(len(line)): found = True found = find_me() if found: print(ind + 1, ":", line[i:], end="") phrase_array_slow.append(ind + 1) break # print(*phrase_array_slow, sep="\n")