Что-то в этой строке должно быть достаточно:
newfile = open(newfilename, 'w')
for line in file(filename, 'r'):
if name in line:
newfile.write(line)
newfile.close()
См .: http://docs.python.org/tutorial/inputoutput.html#methods-of-file-objects
f.readlines () возвращает список, содержащий все строки данных в файле.
Альтернативный подход к чтению строк заключается в циклическом перемещении по объекту файла.Это экономит память, быстро и приводит к более простому коду
>>> for line in f:
print line
Также вы можете проверить использование ключевого слова with
.Преимущество в том, что файл правильно закрывается после завершения его набора
>>> with open(filename, 'r') as f:
... read_data = f.read()
>>> f.closed
True