公司加了很多没意义的工作啊
前言
- 之前的虚拟环境我都是使用 anaconda 进行安装配置,后面发现了 venv 也可以管理虚拟环境,而且在 python3.6 以上是默认安装的。遂在此记录一下:
使用
安装
python3.6及以上已经默认安装,python3.5需要通过系统的包管理工具安装
pip install python3-venv
创建虚拟环境
假设我们要在当前目录的test_env目录下创建虚拟环境,那么执行下面的命令就可以了:
python3 -m venv test_env
启用虚拟环境
在Linux和Mac环境下,打开终端,执行下面的命令:
source ./test_env/bin/activate
在Windows环境下,打开PowerShell,执行下面的命令:
.\test_env\Scripts\Activate.ps1
- 可以看到,命令行的提示符前面会出现括号,里面是虚拟环境名称。
安装包
虚拟环境启用后,就可以使用pip命令来安装需要的包:
pip install easydict
- 注意这里不需要root权限,因此无需添加sudo。
- 在 Linux 和 Mac 系统上,安装的包放在 ./test_env/lib/pythonx.x/site-packages 目录下,在Windows系统上,是在 ./test_env/Lib/site-packages 目录下。
使用包
安装后,可以在命令行执行 python 命令,进入 Python 交互式环境,然后 import 安装的包,如果不报错,就说明安装成功了
python Python 3.9.6 (default, Sep 26 2022, 11:37:49) [Clang 14.0.0 (clang-1400.0.29.202)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> import easydict >>>
- 或者也可以用一条命令 python -c "import
来验证是否安装,没有报错就说明安装成功 - 然后就可以编写你的 Python 代码了,写完后用 python my-code.py 来执行 Python 代码。
退出虚拟环境
退出虚拟的 python 环境,在命令行执行下面的命令即可:
deactivate
删除这个虚拟环境
- 直接删除虚拟环境的根目录即可。
其它问题
Ubuntu上为啥每次登录都是venv状态
- 查看 ~/.bashrc,是不是里面加了source 虚拟环境的命令