Conda: python 虚拟环境

本文最后更新于:2022年10月4日 晚上

为什么要用虚拟环境?

在开发Python应用程序的时候,系统安装的Python3只有一个版本:3.4。所有第三方的包都会被pip安装到Python3的site-packages目录下。这就会造成,在Linux上直接用 pip install 来安装包的时候常常会遇到警告,可能会造成系统包管理器的冲突,如果你是root用户还会警告你可能导致权限问题。

如果今天我们需要某个包的2.3版本,但是明天需要这个包的2.4版本,该怎么办?

这种情况下,每个应用可能需要各自拥有一套“独立”的“隔离”的Python运行环境。一般推荐的解决办法是安装虚拟环境

为什么要用conda

Python3.3 之后,自带了 venv 指令可以创建虚拟环境,但我一般喜欢用 anaconda 或者 miniconda,更方便。他封装了建立python下各种各样的依赖包。

安装

对于Linux,官网提供多种不同架构下的的安装方式:

  • 64-Bit (x86) Installer (659 MB)
  • 64-Bit (Power8 and Power9) Installer (367 MB)
  • 64-Bit (AWS Graviton2 / ARM64) Installer (568 MB)
  • 64-bit (Linux on IBM Z & LinuxONE) Installer (280 MB)

先下载miniconda。点击👉Linux installers此网站找到对应内核版本,比如我的是aarch64,想安装python3.9版本,那就是https://repo.anaconda.com/miniconda/Miniconda3-py39_4.11.0-Linux-aarch64.sh。

1
2
wget https://repo.anaconda.com/miniconda/Miniconda3-py39_4.11.0-Linux-aarch64.sh
bash Miniconda3-py39_4.11.0-Linux-aarch64.sh

之后按Enter继续安装,Miniconda 会显示很长一段使用许可说明,按Enter不断翻页。输入yes来接受license terms。

1
2
3
4
Do you accept the license terms? [yes|no]
[no] >>>
Please answer 'yes' or 'no':'
>>> yes

选择是否运行 conda init 来初始化,我选了 yes 。

出现错误:

1
CommandNotFoundError: Your shell has not been properly configured to use 'conda activate'

这是conda init出错,激活环境即可

1
2
3
4
# 激活环境
source activate
# 退出环境
source deactivate

然后创建新环境

1
2
3
4
5
conda create -n test # 创建一个叫test的版本的虚拟环境
conda activate test # 激活环境
python -m pip install 包名 # 在环境中安装需要的包
conda install 包名 # 也可以用conda来安装
conda deactivate # 退出环境

conda支持指定python版本和安装的包版本。


Conda: python 虚拟环境
https://pawswrite.xyz/posts/10199.html
作者
Rainbow
发布于
2022年5月19日
许可协议