当前位置: 首页 > article >正文

通过环境变量实现多个 python 版本的自由切换以及 Conda 虚拟环境的使用教程

目录

  • Python 安装包的下载和安装
  • 通过环境变量的方式来切换不同的 Python 版本
    • Pycharm 创建项目使用虚拟环境
  • 使用虚拟环境管理工具 conda
    • Conda 教程
      • 1. **环境管理**
        • 创建虚拟环境
        • 激活虚拟环境
        • 退出虚拟环境
        • 列出所有虚拟环境
        • 删除虚拟环境
        • 导出虚拟环境配置
        • 从文件创建虚拟环境
      • 2. **包管理**
        • 安装包
        • 安装指定版本的包
        • 更新包
        • 卸载包
        • 列出已安装的包
        • 搜索包
      • 3. **Conda 自身管理**
        • 更新 Conda
        • 更新 Anaconda
        • 清理缓存
      • 4. **其他常用命令**
        • 查看 Conda 版本
        • 查看帮助
        • 查看环境信息
      • 5. **使用示例**
        • 示例 1:创建环境并安装包
        • 示例 2:导出和共享环境
      • PyCharm 使用 Anaconda 环境创建项目

在 Python 开发中,不同项目可能需要使用不同版本的 Python 或依赖库。如果直接在系统中安装多个 Python 版本,很容易导致版本冲突或依赖混乱,给开发带来不必要的麻烦。为了解决这一问题,掌握如何安装多个 Python 版本并自由切换,是每个 Python 开发者必备的技能。

本文将介绍两种常用的方法来实现多版本 Python 的管理和切换:环境变量配置和 Anaconda 虚拟环境管理。通过环境变量,我们可以手动控制系统中默认的 Python 版本;而通过 Anaconda,我们可以轻松创建和管理多个独立的 Python 环境,避免依赖冲突。无论你是初学者还是经验丰富的开发者,本文都将为你提供清晰的步骤和实用的技巧,帮助你高效管理 Python 版本,提升开发效率。

Python 安装包的下载和安装

首先到 Python 官网(https://python.org)下载指定版本的 Python 安装包。

Python 的版本格式说明,例如 Python3.9.8,第一个数字 3 是主版本,第二个数字 9 是次版本,第三个数字 8 是微版本。哪个版本更好不是绝对的,不同的项目可能依赖不同的 Python 版本,根据项目需求下载指定版本的 python 。

在这里插入图片描述

运行 python 安装程序,选择自定义安装( Customize installation )。

  • 如果当前电脑没有安装任何版本的 python,即第一次安装,需要勾选添加到环境变量(Add Python 3.8 to PATH)。
  • 如果当前电脑已经安装过 python,后续安装更多 python 版本,则不需要勾选添加到环境变量,即使添加了,也不会起作用。因为新添加的环境变量排在之前的 python 环境变量之后,环境变量检索的优先级是从上往下,起作用的是先前的 python 版本的环境变量。

在这里插入图片描述

在这里插入图片描述

如果是第一次安装,勾选添加到环境变量(Add Python to environment variables),多版本的后续安装不需要勾选。自定义一个安装路径 D:\python_versions\Python3_8_3 ,为了清晰明了,安装目录的文件名带上版本的信息。

在这里插入图片描述

安装完成。

在这里插入图片描述

通过环境变量的方式来切换不同的 Python 版本

Python 安装完成后,打开命令行,输入 python --version 检查当前系统默认的 python 版本。

命令行
--------------------------------------------
D:\>python --version
Python 3.7.5

如果没有打印版本信息,那就是环境变量没有配置好的原因。通过添加或修改环境变量,可以修改当前系统默认的 Python 版本。

设置里面找到 系统 关于,找到 高级系统设置,找到 环境变量

在这里插入图片描述


环境变量有 用户级环境变量 和 系统级环境变量,一般修改用户级环境变量就已经够用了,仅对当前用户有效。当然也可以修改系统级环境变量,对所有用户都有效。

在这里插入图片描述


双击path,修改 path 下的值:

  • 可以修改当前已有的值为指定版本的路径。
  • 也可以添加多个版本的路径,通过右边的 上移 / 下移 操作来移动选定的值,环境变量优先级从上往下检索,排在最上面的 python 环境变量生效。

在这里插入图片描述

修改完成后,单击所有界面(子界面、父界面)的确定按钮,修改方可生效。生效后,重新打开命令行。检查当前系统默认的 python 版本:

命令行
--------------------------------------------
D:\>python --version
Python 3.9.8

有用的命令

  • py -0 或者 py --list 命令列出已经安装的 python 版本。
  • py -版本号 运行指定版本的 Python (如:py -3.8),但不会更改当前系统默认的版本。
  • py -3.9 -m venv D:\py_project_name\venv 使用 3.9 版本,创建一个虚拟环境,Python 项目的路径为 D:\py_project_name,虚拟环境所需的文件都放在 D:\py_project_name\venv\ 下。

在这里插入图片描述

命令 cd py_project_name 进入到 python 项目目录下:

使用命令 venv\Scripts\activate.bat 激活虚拟环境,激活后,命令行提示符将会变成 (venv) D:\py_project_name> 。在虚拟环境下,使用命令 deactivate 退出当前虚拟环境。

在这里插入图片描述

在虚拟环境下,使用 pip 命令安装的第三方包都会安装到当前项目的虚拟环境下,这样就不会与其他项目的第三方包 或者与全局的第三方包 产生冲突,亦或者出现版本不兼容的错误等问题,提高开发者的开发效率。

在虚拟环境外,使用 pip 命令安装的包将会安装在全局包的路径下,时间久了,第三方包会比较混乱。所以不建议将所有的包都安装在全局环境下。全局包的路径通常在 ...\python\Lib\site-packages 下。

Pycharm 创建项目使用虚拟环境

在 Pycharm 创建项目时,可以使用虚拟环境,在 Base interpreter 中可以选择基础的解释器版本,并在已安装的 python 版本中选择指定版本的解释器。

请添加图片描述


如果使用全局环境(不建议),那就勾选 Previously configured interpreter ,并在下面选择指定版本的 python 解释器。
在这里插入图片描述


使用虚拟环境管理工具 conda

Anaconda 介绍:Anaconda 是一个功能强大的数据科学平台,专为简化 Python 和 R 语言的开发、包管理和环境管理而设计。

Anaconda 的核心功能包括:

  1. 包管理

    • 提供了 conda 包管理器,可以轻松安装、更新和管理 Python 和 R 的软件包。
    • 支持解决复杂的依赖关系,确保安装的软件包能够正常工作。
  2. 虚拟环境管理

    • 允许用户创建多个独立的虚拟环境,每个环境可以包含不同版本的 Python 和软件包。
    • 避免项目之间的依赖冲突。
  3. 预装科学计算包

    • Anaconda 自带了大量常用的科学计算、数据分析和机器学习相关的 Python 包(如 NumPy、Pandas、Scikit-learn、Matplotlib 等),开箱即用。

下载 Anaconda , 官网:https://www.anaconda.com/products/distribution


安装:

在这里插入图片描述


根据安装提示,不建议将 anaconda 添加到环境变量,不勾选。(意味着 Windows 系统的命令行无法使用 conda 命令。)Anaconda 有一个自带的命令行,conda 命令可以在它自带的命令行下使用。

在这里插入图片描述

安装过程有点慢,耐心等待。


安装完成后,在 开始界面找到 Anaconda Prompt 打开,进入到 Anaconda 自带的命令行界面,可以执行 conda 命令。


Conda 教程

1. 环境管理

创建虚拟环境
conda create -n 环境名 python=版本号
  • 示例:创建一个名为 myenv 的 Python 3.9 环境:

    conda create -n myenv python=3.9
    
激活虚拟环境
conda activate 环境名
  • 示例:激活名为 myenv 的环境:

    conda activate myenv
    
退出虚拟环境
conda deactivate
列出所有虚拟环境
conda env list
  • 输出示例:

    # conda environments:
    base                  *  /opt/anaconda3
    myenv                    /opt/anaconda3/envs/myenv
    
删除虚拟环境
conda remove -n 环境名 --all
  • 示例:删除名为 myenv 的环境:

    conda remove -n myenv --all
    
导出虚拟环境配置
conda env export > environment.yml
  • 将当前环境的配置导出到 environment.yml 文件。
从文件创建虚拟环境
conda env create -f environment.yml
  • 根据 environment.yml 文件创建虚拟环境。

2. 包管理

安装包
conda install 包名
  • 示例:安装 numpy

    conda install numpy
    
安装指定版本的包
conda install 包名=版本号
  • 示例:安装 numpy 1.21.0 版本:

    conda install numpy=1.21.0
    
更新包
conda update 包名
  • 示例:更新 numpy

    conda update numpy
    
卸载包
conda remove 包名
  • 示例:卸载 numpy

    conda remove numpy
    
列出已安装的包
conda list
  • 输出示例:

    # Name                    Version                   Build
    numpy                     1.21.0                   py39_0
    pandas                    1.3.0                    py39_0
    
搜索包
conda search 包名
  • 示例:搜索 numpy

    conda search numpy
    

3. Conda 自身管理

更新 Conda
conda update conda
更新 Anaconda
conda update anaconda
清理缓存
conda clean --all
  • 清理未使用的包和缓存。

4. 其他常用命令

查看 Conda 版本
conda --version
查看帮助
conda --help
查看环境信息
conda info
  • 输出示例:

    active environment : myenv
    active env location : /opt/anaconda3/envs/myenv
    

5. 使用示例

示例 1:创建环境并安装包
  1. 创建名为 myenv 的 Python 3.9 环境:

    conda create -n myenv python=3.9
    
  2. 激活环境:

    conda activate myenv
    
  3. 安装 numpypandas

    conda install numpy pandas
    
  4. 退出环境:

    conda deactivate
    
示例 2:导出和共享环境
  1. 导出当前环境配置:

    conda env export > environment.yml
    
  2. 在其他机器上创建相同环境:

    conda env create -f environment.yml
    

PyCharm 使用 Anaconda 环境创建项目

首先创建一个虚拟环境:conda create -n example_env python=3.7

在这里插入图片描述


环境相关依赖下载完成之后,输入命令 conda activate example_env 激活创建的环境。

在这里插入图片描述


虚拟环境 example_env 激活后,所有使用 conda install 命令 下载的第三方包都会被保存到当前虚拟环境中。如需退出当前虚拟环境,使用 conda deactivate 命令。


打开 PyCharm,新建项目:使用刚刚创建的虚拟环境解释器。

请添加图片描述




END


http://www.kler.cn/a/544057.html

相关文章:

  • Flink内存配置和优化
  • 【STM32】H743的以太网MAC控制器的一个特殊功能
  • 小白学网络安全难吗?需要具备哪些条件?
  • HCIA项目实践--RIP相关原理知识面试问题总结回答
  • Shell-基本命令与运算符
  • VMware Windows_10_x64 安装 VM Tools 后无法将本机文件复制到虚拟机
  • 深入探究 Rust 测试:灵活控制测试的执行方式
  • 【数据结构入门】一、数组
  • FlutterWeb实战:07-自动化部署
  • Spring Boot + ShardingSphere 踩坑记
  • 华为云函数计算FunctionGraph部署ollma+deepseek
  • Java进阶阶段的学习要点
  • 联想电脑如何进入BIOS?
  • 汽车ADAS
  • Python基于Django的微博热搜、微博舆论可视化系统(V3.0)【附源码】
  • Ansible的主机清单
  • c/c++蓝桥杯经典编程题100道(21)背包问题
  • 【网络安全】常见网络协议
  • 【工业安全】-CVE-2019-17621-D-Link Dir-859L 路由器远程代码执行漏洞
  • JAVA安全—Shiro反序列化DNS利用链CC利用链AES动态调试
  • 23页PDF | 国标《GB/T 44109-2024 信息技术 大数据 数据治理实施指南 》发布
  • ASP.NET Core SignalR的协议协商
  • 在vivado中对数据进行延时,时序对齐问题上的理清
  • Web应用项目开发 ——Spring Boot邮件发送
  • 游戏引擎学习第100天
  • 【狂热算法篇】并查集:探秘图论中的 “连通神器”,解锁动态连通性的神秘力量(通俗易懂版)