Google Colab 中安装的 Google Drive 中的相对路径

问题描述 投票:0回答:4

我有一个 Google Colab 笔记本,我想将其分发给其他用户,并且我想在我安装的 Google Drive 中包含文件和目录的相对路径,这样当他们将其放在与其他用户不同的目录中时,代码就不会中断。我有一个。

具体来说,在Python单元中,我希望能够编写像

./demo/output/genomes/gbks
这样的路径,而不是绝对路径
/gdrive/My Drive/Github/cluster_identification/demo/output/genomes/gbks
(因为笔记本本身包含在
/gdrive/My Drive/Github/cluster_identification
中)。

我想知道是否可以使用

sys.path.append
以某种方式将笔记本路径添加到我的 python 路径中,但我不确定如何以不需要我在那里指定绝对路径的方式执行此操作,并且即使我能够添加它,我也不知道在尝试在 python 单元中定义路径时如何使用它。

我找到了这个答案(在Google Colab上获取笔记本的路径),它提供了一个线索,但它并没有完全解决我的问题,而且也不是一个非常强大的解决方案,因为它只有在名称有效的情况下才有效笔记本的形状在 Google Drive 中是独一无二的。

预先感谢您的帮助!

-罗布

python path google-colaboratory relative-path sys
4个回答
3
投票

我认为你可以使用以下命令:

%cd [your path]

1
投票

这样的事情可能会有所帮助:

sys.path.insert(0,"/content/drive/MyDrive/.../...")

然后应该很容易从特定目录访问文件。


1
投票

只需运行这个:

% cd /gdrive/My Drive/Github/cluster_identification

然后您可以使用以下路径:

./demo/output/genomes/gbks

如果您计划让多个用户使用笔记本电脑,他们在安装驱动器后必须小心更改他们

%cd
进入的路径。


0
投票

要使您的代码适用于其他用户,请按照以下步骤操作:

  1. 将所有文件合并到本地计算机上的一个目录中。 -就像你在演示目录中所做的那样-
  2. 确保代码中的所有文件路径都相对于该目录。 -演示目录-
  3. 将整个目录上传到 Google Colab 或 Google Drive 并挂载。
  4. 在 Colab 中运行脚本之前,请将当前工作目录更改为新上传的目录。

您可以通过在 Colab Notebook 的第一个单元格中执行以下代码片段来实现此目的:

%cd /content/your_directory_name

在您的具体情况下,您可以使用以下代码片段:

%cd /gdrive/My Drive/Github/cluster_identification
© www.soinside.com 2019 - 2024. All rights reserved.