我安装了miniconda3,并在其中创建了一个名为py35的虚拟环境。我有一些我只想在此环境中使用的库。因此他们在
/.../miniconda3/envs/py35/libs
但是,由于LD_LIBRARY_PATH不包含上述文件夹,因此无法从环境中找到它们。现在,我想将LD_LIBRARY_PATH设置为仅在虚拟环境中时才包含/ lib。
我当时正在考虑修改miniconda用来启动环境的激活脚本,但是不确定这是标准做法还是有更简单的方法来实现。
参考方案
您可以在环境激活时通过编辑activate.d/env_vars.sh
脚本来设置环境变量。看到这里:https://conda.io/docs/user-guide/tasks/manage-environments.html#macos-and-linux
该链接的关键部分是:
窗口,例如
/home/jsmith/anaconda3/envs/analytics
。 文件:
cd /home/jsmith/anaconda3/envs/analytics
mkdir -p ./etc/conda/activate.d
mkdir -p ./etc/conda/deactivate.d
touch ./etc/conda/activate.d/env_vars.sh
touch ./etc/conda/deactivate.d/env_vars.sh
./etc/conda/activate.d/env_vars.sh
:
#!/bin/sh
export MY_KEY='secret-key-value'
export MY_FILE=/path/to/my/file/
./etc/conda/deactivate.d/env_vars.sh
::
#!/bin/sh
unset MY_KEY
unset MY_FILE
当您运行conda activate analytics
时,环境
变量MY_KEY和MY_FILE设置为您写入的值
文件。当您运行conda deactivate
时,这些变量是
已删除。
当前,我有一个Python项目正在处理这样的目录结构:tests/ corpus/ __init__.py tests.py monkey/ corpus/ corpus.py setup.py 我想将tests.py(在测试/语料库中)导入corpus.py(在猴子/语料库中)。我已经看到许多涉及使用相对导入和sys.path的解决方案,但是我也看到人们直…
如何将Python安装目录打印到输出? - python假设Python安装在该位置 C:\ TOOLS \ COMMON \ python \ python252我想在程序输出中打印此位置。请让我知道我可以这样做。 python大神给出的解决方案 您可以使用import sys, os os.path.dirname(sys.executable) 但请记住,与在Unix系统中相比,程序的“安装”通常是沿着以下…
os.path.getsize(path)或os.stat - pythonos.path.getsize(path)和os.stat有什么区别?哪一个最适合在python 3中使用?以及何时使用它们?为什么我们有两个相同的解决方案?我找到了this答案,但我不明白这句话的意思: 由此看来,似乎很清楚,没有理由期望这两种方法的行为有所不同(也许是由于代码中循环结构的不同)特别是为什么我们有两种方法,有什么不同? 参考方案 stat是…
在virtualenv中使用其他Python版本 - python我有一个目前使用python 2.5.4运行的Debian系统。我正确安装了virtualenv,一切正常。我是否可以将virtualenv与其他版本的Python一起使用?我编译了Python 2.6.2,并希望将其与一些virtualenv一起使用。覆盖二进制文件是否足够?还是我必须更改有关库的某些内容? 参考方案 在创建您的virtualenv实例以指…
从不同的工作目录导入Python模块 - python我有一个使用内置模块的Python脚本,但是还导入了与主脚本本身位于同一目录中的许多自定义模块。例如,我会打电话python agent.py 和agent.py具有许多导入,包括:import checks 其中checks与agent.py位于同一目录中的文件agent/agent.py agent/checks.py 当前工作目录为agent /时,一…