Чтобы обеспечить содержание промывается и записывается в файл без необходимости закрыть дескриптор файла:
import os
# ...
result.write("\nTC-"+str(TC_index))
result.flush()
os.fsync(result)
Но, конечно, если вы разорвать петлю вручную, нет никакой гарантии, вы не нарушите его между записью и флешем, тем самым не получив последнюю строку. Я не знаком с кнопкой остановки Eclipse, но, возможно, он прекращает выполнение, вызывая исключение KeyboardInterrupt
. Если это так, вы всегда можете поймать это и явно закрыть файл. А еще лучше, использовать with
заявление, которое будет вызывать, чтобы это произошло автоматически:
with open("c:/filename.csv", "w") as result:
for TC_index in range(100): # or whatever loop
result.write("\nTC-"+str(TC_index))
# flush & fsync here if still necessary (but might not be)
Пожалуйста, быть немного более конкретно в вашем вопросе. А также дайте весь код того, как вы обрабатываете файлы, и если вы делаете что-нибудь еще. –
Не могли бы вы предоставить больше своего кода? –
вам нужно закрыть дескриптор файла, иначе никто из ваших записей не будет гарантирован –