Я хочу сохранить список в файл, поэтому я просматриваю его и записываю в файл. Все в порядке. Но SOMETIMES (!?!?) Список не написан полностью, он останавливает рендеринг в середине элемента. Ошибка не возникает, она молча продолжает выполнение остальной части кода. Я пробовал несколько способов написать его, несколько версий python (2.4, 2.5, 2.7) и все равно. Иногда это работает, иногда нет. Когда он распечатывается в окне терминала, а не в файле, он работает исправно без сбоев. Я что-то упускаю?
это оно
...
from bpnn import *
...
# save input weights for later use:
writewtsi = open("c:/files/wtsi.txt", "w")
for i in range(net.ni):
print>>writewtsi, net.wi[i]
bpnn - это модуль нейронной сети отсюда: http://python.ca/nas/python/bpnn.py
Закройте файл, когда закончите все записи, чтобы обеспечить кэширование с записью на диск с помощью:
writewtsi.close()
использование
.flush()
вот так:
...
from bpnn import *
...
# save input weights for later use:
writewtsi = open("c:/files/wtsi.txt", "w")
for i in range(net.ni):
print>>writewtsi, net.wi[i]
writewtsi.flush()
Или вы можете сделать файл небуферизованным с третьим параметром, чтобы открыть():
...
from bpnn import *
...
# save input weights for later use:
writewtsi = open("c:/files/wtsi.txt", "w", 0)
for i in range(net.ni):
print>>writewtsi, net.wi[i]
Сохраняется ли проблема, если вы используете:
with open("c:/files/wtsi.txt", "w") as writewtsi:
for i in range(net.ni):
print>>writewtsi, net.wi[i]