问题很简单:我在gDrive上有一些数据,例如在 /项目/ my_project / my_data *。

我也有一个简单的笔记本在gColab。

所以,我想做的是:

for file in glob.glob("/projects/my_project/my_data*"):
    do_something(file)

不幸的是,所有的例子(例如https://colab.research.google.com/notebook#fileId=/v2/external/notebooks/io.ipynb)都建议只将所有必要的数据加载到笔记本中。

但是,如果我有很多数据,就会很复杂。 有没有解决这个问题的机会?

谢谢你的帮助!


当前回答

使用colab笔记本从谷歌驱动器读取图像

import glob
images_list = glob.glob("add google drive path/*.jpg")
print(images_list)

创建YOLOv4培训所需的training.txt文件

file = open("/content/drive/MyDrive/project data/obj/train.txt", "w") 
file.write("\n".join(images_list)) 
file.close() 

其他回答

不能在colab上永久存储文件。虽然你可以从你的驱动器导入文件,每次当你完成了文件,你可以把它保存回来。

将谷歌驱动器挂载到Colab会话

from google.colab import drive
drive.mount('/content/gdrive')

您可以像写入本地文件系统一样简单地写入谷歌驱动器 现在如果你看到你的谷歌驱动器将加载在文件选项卡。现在您可以从您的colab访问任何文件,您可以写入以及读取它。这些更改将在您的驱动器上实时完成,任何拥有您文件访问链接的人都可以从您的colab查看您所做的更改。

例子

with open('/content/gdrive/My Drive/filename.txt', 'w') as f:
   f.write('values')

可以考虑只下载带有永久链接和预先安装的gdown的文件

我很懒,我的记忆力很差,所以我决定创建一个更容易记忆和输入的easycolab:

import easycolab as ec
ec.mount()

确保首先安装它:!pip install easycolab

mount()方法基本上实现了这一点:

from google.colab import drive
drive.mount(‘/content/drive’)
cd ‘/content/gdrive/My Drive/’
from google.colab import drive
drive.mount('/content/drive')

这对我来说是完美的 我后来能够使用操作系统库来访问我的文件,就像我在我的PC上访问它们一样

2022年12月27日Vy更新:

from google.colab import drive
drive.mount('/content/gdrive/')