公司加了很多没意义的工作啊

前言

  • 之前的虚拟环境我都是使用 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 虚拟环境的命令