Python 在系统 Windows 和 Ubuntu 中创建虚拟环境

Python 在系统 Windows 和 Ubuntu 中创建虚拟环境

Python 虚拟环境是独立运行的 Python 运行环境,每台机器上都可以为不同的项目创建不同的虚拟环境,每个虚拟环境都有自己的 Python 解释器、独立的安装包或库和环境变量。Python 虚拟环境是相互隔离的,可以为需要不同版本 Python 和第三方库的项目创建不同的虚拟环境,以实现项目隔离,这样操作也能避免冲突,污染全局 Python 环境。除此之外,创建虚拟环境还可以方便程序员分享和管理项目的依赖关系,安全测试新包而不影响其他项目。本文主要介绍使用 Python 内置模块 venv 创建虚拟环境的方法,venv 模块是 Python 3.3 版本及以上才有的内置模块,若想创建 Python 2.x 和 Python 3.x 其他版本的虚拟环境,可以使用第三方工具 virtualenv,virtualenv 安装虚拟环境的方法,请各位执行探索。

在本文开始,已经介绍了创建虚拟环境的作用,下面开始正式在 Windows 和 Ubuntu 上创建虚拟环境。具体方案如下所示。

1 Python 在系统 Windows 上创建虚拟环境

本节当中,主要介绍在系统 Windows 上创建虚拟环境的具体方法,具体操作如下所示。

  1. 在键盘上同时单击win + R,输入 cmd 进入命令行模式。界面效果如下所示。

  2. 进入命令行模式后,可以通过以下命令查看本机上安装的 Python 版本,具体命令如下所示。

    cmd 复制代码
    C:\Users\leolei>python --version
    Python 3.12.3

    如上所示,本机电脑上输出的 Python 版本为 Python 3.12.3 大于 Python 3.x,故此,可以使用 Python 内置模块创建虚拟环境。如不满足条件,可以不用 往下看了,建议你在网上查找一下其他资源。

  3. 创建虚拟环境。首先切换到 d 盘目录,在此目录下创建一个目录 my-env 并进入此目录当中,在使用 Python 的内置模块 venv 创建虚拟环境。具体的操作命令如下所示。

    cmd 复制代码
    C:\Users\leolei>d:
    D:\>mkdir my-env && cd my-env	# 创建目录并进入目录当中
    D:\my-env>python -m venv .vnev	# 创建名为 .venv 的虚拟环境
    D:\my-env>

    若上述操作完成后,屏幕若没有输出错误信息,则证明虚拟环境创建成功。

    Notebook Tips

    && 是一个连级符,用于串联命令时用,简化步骤,命令会从前往后一次执行。

    -m venv 表示要使用的模块是 venv。

    .venv 表示虚拟环境的名称,虚拟环境名称可以自定义,可以定义任何名称。

    虚拟环境创建成功后,可到目录查看是否创建成功,本问的查看目录是 D:\my-env\.vnev\Scripts,具体信息可参考下图。

  4. 激活和关闭虚拟环境

    虚拟环境创建成功后输入如下命令即可激活环境。

    cmd 复制代码
    D:\my-env>.vnev\Scripts\activate

    若输入上述命令生效,屏幕将会显示类似如下界面的信息。

    退出虚拟环境输入命令 deactivate 即可。

2 Python 在系统 Ubuntu 上创建虚拟环境

本节当中,主要介绍在系统 Ubuntu 上创建虚拟环境的具体方法,本文的演示环境为虚拟机平台,具体操作如下所示。

  1. 打开终端,检查 Python 环境的版本,具体命令如下所示。

    shell 复制代码
    leolei@leifenglin:~$ python3 --version
    Python 3.6.9

    如屏幕输出所示,Python 版本大于 Python 3.x,满足要求,可以使用内置模块 venv 创建虚拟环境。

  2. 创建虚拟环境。首先切换到家目录,在此目录下创建一个目录 my-env 并进入此目录当中,在使用 Python 的内置模块 venv 创建虚拟环境。具体的操作命令如下所示。

    shell 复制代码
    leolei@leifenglin:~$ cd ~
    leolei@leifenglin:~$ mkdir my-env && cd my-env
    leolei@leifenglin:~/my-env$ python3 -m venv .venv
    The virtual environment was not created successfully because ensurepip is not
    available.  On Debian/Ubuntu systems, you need to install the python3-venv
    package using the following command.
    
        apt-get install python3-venv
    
    You may need to use sudo with that command.  After installing the python3-venv
    package, recreate your virtual environment.
    
    Failing command: ['/home/leolei/my-env/.venv/bin/python3', '-Im', 'ensurepip', '--upgrade', '--default-pip']

    屏幕输出显示虚拟环境创建不成功,是由于没有安装 python3-venv。我们只需要按照他的提示进行操作即可。

    shell 复制代码
    leolei@leifenglin:~/my-env$ sudo apt install python3-venv
    leolei@leifenglin:~/my-env$ python3 -m venv .venv
    leolei@leifenglin:~/my-env$ ll
    total 12
    drwxrwxr-x 3 leolei leolei 4096 Jan 11 09:46 ./
    drwxr-xr-x 8 leolei leolei 4096 Jan 11 09:45 ../
    drwxrwxr-x 6 leolei leolei 4096 Jan 11 09:50 .venv/
    leolei@leifenglin:~/my-env/.venv$ tree .
    .
    ├── bin
    │   ├── activate
    │   ├── activate.csh
    │   ├── activate.fish
    │   ├── easy_install
    │   ├── easy_install-3.6
    │   ├── pip
    │   ├── pip3
    │   ├── pip3.6
    │   ├── python -> python3
    │   └── python3 -> /usr/bin/python3
    ├── include
    ├── lib

    根据上述操作,虚拟环境已经安装成功。

  3. 激活和关闭虚拟环境

    输入如下命令即可进入虚拟环境。

    shell 复制代码
    leolei@leifenglin:~/my-env$ source .venv/bin/activate
    (.venv) leolei@leifenglin:~/my-env$

    如屏幕输出示例,虚拟环境 .venv 以创建成功。

    关闭虚拟环境的方法与 Windows 系统操作一致,此处不再赘述。

至此,Python 在系统 Windows 和 Ubuntu 上创建虚拟环境就到此结束了。

相关推荐
Wonderful U3 分钟前
Python+Django实战|美食菜谱分享与食材采购一体化系统:食谱发布收藏、图文教程、食材商城、购物车、订单管理、美食点评、智能食谱推荐
python·django·美食
caimouse3 分钟前
Reactos 第 5 章 进程与线程 — 5.12 进程挂靠
c语言·windows
秦jh_14 分钟前
【LangChain核心组件】少样本提示(示例选择器)
人工智能·python·langchain
谢娘蓝桥16 分钟前
windows 开启openssh
windows
资深流水灯工程师21 分钟前
PyCharm 增强插件完整安装与配置指南(PySide6 开发专用)
ide·python·pycharm
设计师小聂!24 分钟前
Windows 系统 Docker 安装与配置指南
windows·docker·容器
骑士雄师24 分钟前
16.1深入讲解 LangGraph 的静态配置 configurable
windows·microsoft
我命由我1234528 分钟前
Windows 操作系统 - Windows 查看防火墙是否开启、Windows 查看防火墙放行端口
java·运维·开发语言·windows·java-ee·操作系统·运维开发
Kobebryant-Manba28 分钟前
学习模型构造
python·深度学习·学习
FlyWIHTSKY30 分钟前
JavaScript 和 TypeScript 分别是什么,可以相互写吗
javascript·ubuntu·typescript