У меня есть простая функция, которая сортирует словарь:написать отсортированные результаты в файл
data = inputfile.readlines()
lineData = sorted(data, key=len, reverse=True)[:3]
Печать вывод:
print sorted(data, key=len, reverse=True)[:3]
генерирует ожидаемый результат, однако при записи в файл:
outputfile.writelines sorted(data, key=len, reverse=True)[:3]
ничего не генерирует. Как написать вывод в текстовый файл (выходной файл)? Полный код выглядит следующим образом:
import sys, string
inputfilenames, outputfilename = sys.argv[1:-1], sys.argv[-1]
def do_something_with_input(inputfile):
data = inputfile.readlines()
print sorted(data, key=len, reverse=True)[:3]
print sys.path[0]+"/"+ outputfilename
def write_results(outputfile):
data = inputfile.readlines()
outputfile.writelines(sorted(data, key=len, reverse=True)[:3])
for inputfilename in inputfilenames:
inputfile = open(inputfilename, "r")
do_something_with_input(inputfile)
outputfile = open(outputfilename, "w")
write_results(outputfile)
Спасибо. Изменение функции write_results было именно тем, что мне нужно было сделать. – kjarsenal