我试着经常把一些数据从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
方法会导致在循环结束后写入一个空内容。有没有办法强制完整和成功的频繁上传文件
谢谢你的帮助
目前没有回答
相关问题 更多 >
编程相关推荐