у меня есть следующая функцияпечать выходной питона в файл не работает
outFile = open("svm_light/{0}/predictions-average.txt".format(hashtag), "a")
with open('svm_light/{0}/predictions-{1}'.format(hashtag,segMent)) as f:
tot_sum = 0
for i,x in enumerate(f, 1):
val = float(x)
tot_sum += val
average = tot_sum/i
outFile.write(average)
Я просто пытаюсь напечатать выход для каждого среднем 1 среднем в каждой строке. однако им получает следующее сообщение об ошибке ...
outFile.write(average)
TypeError: expected a character buffer object
, если я просто изменить свою программу к этому:
with open('svm_light/{0}/predictions-{1}'.format(hashtag,segMent)) as f:
tot_sum = 0
for i,x in enumerate(f, 1):
val = float(x)
tot_sum += val
average = tot_sum/i
print average
печатает следующее:
@ubuntu:~/Documents/tweets/svm_light$ python2.7 tweetAverage2.py
0.428908289104
0.326446277105
0.63672940322
0.600035561829
0.666699795857
печатает вывод аккуратно на экране, но я хотел бы сохранить его в среднем по одной строке, как показано на фактическом выходе.
Im новый для python, и я использую 2.7 под ubuntu.
UPDATE
Thanx к быстрой реакции, ввел функцию ул. Тем не менее, он печатает пустой файл, я вижу, что файл имеет содержимое для бит, а затем его нет. скорее всего, его переписывают все время. Таким образом, я помещаю эту функцию печати, которой это не должно быть, но где?
'outFile.write (ул (средняя) + "\ п")' –