Python切换虚拟环境(python虚拟环境conda)

http://www.itjxue.com  2023-04-09 08:59  来源:未知  点击次数: 

在emacs上使用Python虚拟环境

使用的是purcell的 基础配置 。在不使用该配置的情况下也有可能出现类似的问题。

使用的Python环境管理是 conda

详细情况记录在这个 issue 上。

一开始使用anaconda-mode自带的切换方式, M-x pythonic-activate RET /path/to/virtualenv RET ,发现在 Python Shell 、 pdb 和 flycheck 上分别使用了不同的虚拟环境。

后续分别尝试了 direnv.el 插件和 purcell 的 envrc.el 插件。这两个插件都是基于 direnv 工作的。

direnv 是一个 shell 扩展,可以根据 shell 进入的目录不同,加载和卸载环境变量。这个 主页 可以看到 direnv 的安装方式。这个 wiki 包含的使用方法和与其他工具的集成,包括了如何切换Python的虚拟环境的 方法 。

使用这个插件,我发现需要在一个 .envrc 文件的目录下打开 emacs 才能正常使用。如果不是在该环境下,虚拟环境的自动切换并不起作用。一旦生效了,切换目录时,虚拟环境会自动切换,并且在上述的三个环境中都可以使用相同的环境。特别的,在 python shell 中,只需要 exit() ,重新再 C-c C-p 就可以在新环境中运行。

会出现第一次打开一个存在.envrc文件目录的文件时,虚拟环境不起作用。此时手动 M-x envrc-allow RET 才能生效。此时切换工作目录可以自动切换虚拟环境。但是特别的,在 python shell 中,需要完全kill掉buffer,重新再 C-c C-p 才可以在新环境中运行。

jupyter多个虚拟环境间切换

jupyter只需安装一个即可。用conda(不管是Anaconda还是Miniconda)一般会创建多个虚拟环境,这些环境中的python版本以及各种库的配置和版本也都是不一样的,此时我们希望jupyter能为每个虚拟环境单独处理!

下面从用conda安装虚拟环境开始,以pytorch的安装作为测试。下面都是Miniconda下进行的。

初始:从Anaconda Prompt中打开cmd,此时显示的初始conda环境为(base)环境!

创建命令:conda create -n pytorch_gpu

效果:创建的名为pytorch_gpu的虚拟环境会在暗转的Miniconda下的envs文件夹中!

激活命令:conda activate pytorch_gpu

效果:环境从(base)变为(pytorch_gpu);说明已经进入成功;

安装命令:conda install pytorch torchvision torchaudio cudatoolkit=11.0 -c pytorch

效果:把pip、numpy、cudatoolkit、pywin32都一并安好

进一步安装命令:

退出命令:conda deactivate

效果: 环境从(pytorch_gpu)变回(base);说明已经退出成功;

注:退出命令不需要后面跟“虚拟环境名”,因此此时已经在环境内了。

(1)安装必备的包:pip install ipykernel

(2)为虚拟环境创建kernel文件:conda install -n 环境名称 ipykernel

(3)在jupyter中激活这个kernel文件:python -m ipykernel install --user --name 环境名称 --display-name '显示的名称'

(4)验证是否创建对了:主要查看python的版本号 + 特殊的库

注:创建好jupyter notebook的 'pytorch_gpu' 虚拟环境后,可以在 任何地址 处创建.ipynb文件! 即 ' 虚拟环境的创建位置 ' 与 '相应的.ipynb文件的创建位置' 是不一样的!

一系列验证命令:

conda基本命令及python的虚拟环境

查看版本号 :conda --version

查看所有包 : conda list

安装模块包 :conda install package

卸载模块包 :conda uninstall package

升级所有包 : conda upgrade --all

创建虚拟环境 :conda create -n EnvName python=3.7 (版本号)

切换虚拟环境 :activate EnvName

查看虚拟环境 :conda env list

退出虚拟环境 :deactivate

删除虚拟环境 :conda remove -n EnvName --all

导入 :conda EnvName export environment.yaml

导出 :conda EnvName create -f environment.yaml

安装 :

pip install virtualenv

pip install virtualenvwrapper-win

环境变量 :

新建文件夹D:/pyVirtualProject

变量名WORKON_HOME

变量值D:/pyVirtualProject

命令 :

创建:mkvirtualenv 虚拟环境名称

删除:rmvirtualenv 虚拟环境名称

进入:workon 虚拟环境名称

退出:deactivate

列表:lsvirtualenv

(责任编辑:IT教学网)

更多