如何在 google colab 中添加到 PYTHONPATH 的路径

Alp*_*ace 13 python google-colaboratory

如何在 google colab 中执行以下命令。 export PYTHONPATH=/project/pylib/src:$PYTHONPATH

!export PYTHONPATH=/project/pylib/src:$PYTHONPATH不影响。

Nag*_*S N 10

编辑 2020-11-12

使用 `%` 而不是 `!` 会保留对会话中所有单元格的任何更改。因此,我们可以使用它来设置环境变量 `PYTHONPATH`。但是,导出在 colab 中不起作用。`%env` 可用于设置环境变量。
! echo $PYTHONPATH
%env PYTHONPATH="$/env/python:/content/gdrive/My Drive/Colab Notebooks/MNIST_Classifier/src"
! echo $PYTHONPATH
Run Code Online (Sandbox Code Playgroud)

输出:

/env/python
/env/python:/content/gdrive/My Drive/Colab Notebooks/MNIST_Classifier/src
Run Code Online (Sandbox Code Playgroud)

初步答复

以下对我有用
! echo $PYTHONPATH

import os
os.environ['PYTHONPATH'] += ":/content/gdrive/My Drive/Colab Notebooks/MNIST_Classifier/src"

! echo $PYTHONPATH
Run Code Online (Sandbox Code Playgroud)

输出:

/env/python
/env/python:/content/gdrive/My Drive/Colab Notebooks/MNIST_Classifier/src
Run Code Online (Sandbox Code Playgroud)

来源:
https : //medium.com/@omernaeem/you-can-set-environment-variables-using-os-environ-78a5181b6376
/sf/answers/3477930361/


jak*_*vdp 9

答案取决于您为什么要这样做。

例如,如果您想将路径添加到当前 Python 会话,以便 Python 的导入机制找到位于该目录中的模块,您可以这样做:

import sys
sys.path.insert(1, "/project/pylib/src")
Run Code Online (Sandbox Code Playgroud)

如果您想修改环境变量本身(这不会影响当前 Python 会话中使用的路径),您可以使用%set_env魔法:

%set_env PYTHONPATH=/project/pylib/src:/env/python
Run Code Online (Sandbox Code Playgroud)

  • 但我想使用google colab,这个环境与正常系统有些不同。我只是想将我的项目从我的电脑移动到google colab,根据我的测试,它无法导入google colab中相同目录的包,但它可以在我们的正常系统中运行。所以我需要添加 PYTHONPATH。 (2认同)