Я написал программу на python для просмотра списка X-файлов, открытия каждого из них, чтения построчно и записи (добавления) в выходной файл.Поскольку эти файлы занимают несколько ГБ каждый, это занимает очень много времени.
Я ищу предложения по улучшению производительности этой программы ... У меня нет формального обучения CS, поэтому, скорее всего, я пропускаю "очевидное решение этой проблемы;Я провел некоторое исследование, но, опять же, мои ограниченные знания (и другие задачи с более высоким приоритетом) ограничивают мою способность реализовывать такие ... Это также мой первый пост о переполнении стека. Заранее спасибо.
for name in PR_files:
with open(PR_path + name, 'r') as f:
line = f.readline()
while line:
with open(PR_out_path, 'a') as g:
g.write(line + '\n')
line = f.readline()
f.close()
Вышеупомянутая программа будет работать, но будет иметь пустую строку между каждой строкой в выходном текстовом файле;это потому, что первая строка следующего файла начиналась с последней строки предыдущего файла (мое решение этой проблемы состояло в том, чтобы добавить '\ n' к каждой строке, записываемой в выходной файл. По этой причине я написал другой блокудалить все пустые строки в выходном файле (да, очень неэффективно, возможно, гораздо лучший способ сделать это)
# this removes all blank lines from out put file
with open(PR_out_path) as this, open(PR_out_path_fix, 'w') as that:
for line in this:
if not line.strip():
continue
that.write(line)