То, что я до сих пор:Как выводить каждую строку в файл, который содержит любой из строк в списке
def FileSearch(filename, items):
try:
filehandle = open(filename, "r")
linenumber = 0
for line in filename:
linenumber +=1
for item in items:
if item in line:
print("%2i - %s" %(linenumber, line), end="")
except IOError:
print("Error file cannot be read or file does not exist")
print("Please try again")
Я пытаюсь напечатать строки, предшествовавшие их LINENUMBER, которые содержат какой-либо из строки, содержащиеся в списке «элементы». Так что бы на выходе что-то вроде этого:
>>>FileSearch("textfile",["this","and","is"])
2 - this is the 2nd line
4 - hello and goodbye
5 - this is a very basic example
Но когда я запускаю программу, я даже не получаю сообщение об ошибке, ничего не происходит, просто бежит к следующей строке. Буду признателен за любую помощь. Мне также интересно, был ли способ распечатать строки в числовом порядке или программа сама сделала бы это здесь?
Вы хотите линии, где более чем один матч будет найден, чтобы быть напечатаны более одного раза? – M4rtini
Нет, я не хочу дубликатов – DecafOyster208