скажите, что это ваш входной файл test.txt
, расположенный по адресу /Users/redwing/temp/
/Users/cat/meow/meoew
/Users/cat/meow/meoew2
/Users/dog/bow/wow
тогда этот скрипт выведет файл, содержащий только строки, содержащие cat
.
in_fname = '/Users/redwing/temp/test.txt'
out_fname = '/Users/redwing/temp/test_output.txt'
f_out = open(out_fname, 'w+')
f_in = open(in_fname, 'r')
for content in f_in:
if 'cat' in content:
f_out.write(content)
f_in.close()
f_out.close()
Хорошая особенность этого решения в том, что весь файл никогда не читается в память, поэтому не имеет значения, отфильтрованы ли вы 3000 или 30 миллионов строк.
PS. Отправил мой ответ перед вашим редактированием. Очевидно, вам нужно просто заменить cat
на ceo
)