Google Colab - часто пишите на диск - PullRequest
1 голос
/ 10 ноября 2019

Я пытаюсь часто записывать некоторые данные из записной книжки Colab в файл, расположенный на Google Диске. Я установил диск с функцией drive.mount('/content/drive'). После этого у меня есть цикл, который записывает в файл каждые n итераций, что реализовано так:

for i in range(BIG):
  # Do something...
  if i % n == 0:
    with open(gdrive_file_path, "w") as f:
      f.write("Some message")

Я заметил, что если n недостаточно велико (например, n=10),содержимое не обновляется, а файл перезаписывается после окончания цикла. Если n больше (пробовал n=100), я вижу изменения вживую. Я предполагаю, что для colab.drive требуется некоторое рабочее время, чтобы что-то сделать, но я не могу найти способ, чтобы обеспечить обновление файла диска без остановки цикла. Я надеялся, что f.flush() и os.fsync(f) могли бы помочь, но улучшения не было, вызов метода flush приводит к записи пустого содержимого после завершения цикла. Есть ли способ принудительно и часто загружать файлы?

Спасибо за помощь!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...