通过环境变量实现多个 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.rhkb.cn/news/16895.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

排序算法详解、应用对比与C语言实现

四种经典排序算法详解(原理动图代码) 一、排序算法的重要性 排序算法是计算机科学领域最基础的算法之一,在数据库索引、搜索引擎优化、大数据分析等领域有广泛应用。根据Stack Overflow 2022开发者调查,超过83%的面试会考察算法…

Python基于Django的微博热搜、微博舆论可视化系统(V3.0)【附源码】

博主介绍:✌Java老徐、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专栏推荐订阅👇&…

网络安全ids是什么意思

1、 简述IPS和IDS的异同点; 入侵检测系统(IDS) IDS(Intrusion Detection Systems,入侵检测系统),专业上讲就是依照一定的安全策略,对网络、系统、运行状况进行监视,尽可能…

JVM春招快速学习指南

1.说在前面 在Java相关岗位的春/秋招面试过程中,JVM的学习是必不可少的。本文主要是通过《深入理解Java虚拟机》第三版来介绍JVM的学习路线和方法,并对没有过JVM基础的给出阅读和学习建议,尽可能更加快速高效的进行JVM的学习与秋招面试的备战…

json格式,curl命令,及轻量化处理工具

一. JSON格式 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于一个子集的JavaScript编程语言,使用人类易于阅读的文本格式来存储和表示数据。尽管名字中有“JavaScript”,但JSON是语言无关的,几…

echarts 3d中国地图飞行线

一、3D中国地图 1. 一定要使用 echarts 5.0及以上的版本; 2. echarts 5.0没有内置中国地图了。点击下载 china.json; 3. 一共使用了四层地图。 (1)第一层是中国地图各省细边框和展示南海诸岛; (2)第二层是…

从 0 开始本地部署 DeepSeek:详细步骤 + 避坑指南 + 构建可视化(安装在D盘)

个人主页:chian-ocean 前言: 随着人工智能技术的迅速发展,大语言模型在各个行业中得到了广泛应用。DeepSeek 作为一个新兴的 AI 公司,凭借其高效的 AI 模型和开源的优势,吸引了越来越多的开发者和企业关注。为了更好地…

[AI]Mac本地部署Deepseek R1模型 — — 保姆级教程

[AI]Mac本地部署DeepSeek R1模型 — — 保姆级教程 DeepSeek R1是中国AI初创公司深度求索(DeepSeek)推出大模型DeepSeek-R1。 作为一款开源模型,R1在数学、代码、自然语言推理等任务上的性能能够比肩OpenAI o1模型正式版,并采用MI…

Linux(socket网络编程)TCP连接

Linux(socket网络编程)TCP连接 基础文件目录函数系统进程控制函数fork()exec系列函数void abort(void)void assert(int expression)void exit(int status)void _exit(int status)int atexit(void (*func)(void))int on_exit(void (*function)(int,void*)…

408-数据结构

数据结构在学什么? 1.用代码把问题信息化 2.用计算机处理信息 ch1 数据:数据是信息的载体,是描述客观事物属性的数、字符及所有能输入到计算机中并被计算机程序识别和处理的符号的集合。数据是计算机程序加工的原料。 ch2 //假设线性表…

Go语言开发桌面应用基础框架(wails v3)-开箱即用框架

前言 本文是介绍如何集成好了Wails3开发框架以及提供视频教程,当你需要桌面开发时,直接下载我们基础框架代码,开箱即用不用配置开发需要依赖。 为什么使用v3版本,主要是v3新增的功能 ​支持多个窗口:在单个应用程序…

Git 与 Git常用命令

Git 是一个开源的分布式版本控制系统,广泛用于源代码管理。与传统的集中式版本控制系统不同,Git 允许每个开发者在本地拥有完整的代码库副本,支持离线工作和高效的分支管理。每次提交时,Git 会对当前项目的所有文件创建一个快照&a…

尚硅谷爬虫note004

一、urllib库 1. python自带,无需安装 # _*_ coding : utf-8 _*_ # Time : 2025/2/11 09:39 # Author : 20250206-里奥 # File : demo14_urllib # Project : PythonProject10-14#导入urllib.request import urllib.request#使用urllib获取百度首页源码 #1.定义一…

老WinForm中一个执行文件使用SQLite数据库

EF6在老WinForm中停止更新了,但如果只是在win10上面使用,老的.net Framework 4.8框架有一个优势,编译后的执行文件很小。还有一些老类库也只能在老的.net Framework 4.8框架使用,所以微软还是保留了老的.net Framework 4.8框架。 …

diff算法简析

diff算法的核心目的是用最少的步骤找出新旧节点的差异,从而更新视图。 diff算法是一种通过同层的树节点进行比较的高效算法,探讨的是虚拟DOM树发生变化后,生成DOM树更新补丁的方式。对比新旧两株虚拟DOM树的差异,将更新补丁作用于…

19.3 连接数据库

版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。 ​​​​​​​需要北风数据库的请留言自己的信箱。 连接数据库使用OleDbConnection(数据连接)类&#xff…

Redis实现分布式锁

一、使用分布式锁的背景是什么 1、如果你公司的业务,各个应用都只部署了一台机器,那么完全用不着分布式锁,直接使用Java的锁即可 2、可是当你们的业务量大,多台机器并发情况下争夺一个资源的时候,就必须要保证业务的…

变化检测相关论文可读list

一些用得上的: 遥感变化检测常见数据集https://github.com/rsdler/Remote-Sensing-Change-Detection-Dataset/ 代码解读:代码解读 | 极简代码遥感语义分割,结合GDAL从零实现,以U-Net和建筑物提取为例 对本list的说明:…

docker 逃逸突破边界

免责声明 本博客文章仅供教育和研究目的使用。本文中提到的所有信息和技术均基于公开来源和合法获取的知识。本文不鼓励或支持任何非法活动,包括但不限于未经授权访问计算机系统、网络或数据。 作者对于读者使用本文中的信息所导致的任何直接或间接后果不承担任何…

cv2.Sobel

1. Sobel 算子简介 Sobel 算子是一种 边缘检测算子,通过对图像做梯度计算,可以突出边缘。 Sobel X 方向卷积核: 用于计算 水平方向(x 方向) 的梯度。 2. 输入图像示例 假设我们有一个 55 的灰度图像,像素…