通过环境变量实现多个 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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/968741.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

OSPF高级特性(3):安全特效

引言 OSPF的基础我们已经结束学习了,接下来我们继续学习OSPF的高级特性。为了方便大家阅读,我会将高级特性的几篇链接放在末尾,所有链接都是站内的,大家点击即可阅读: OSPF基础(1):工…

百度 API 教程 001:显示地图并添加控件

目录 01、基本使用 前期准备 显示地图 开启鼠标滚轮缩放地图 02、添加地图控件 添加标准地图控件 添加多个控件 网址:地图 JS API | 百度地图API SDK 01、基本使用 前期准备 注册百度账号 申请成为开发者 获取密钥:控制台 | 百度地图开放平台…

window patch按块分割矩阵

文章目录 1. excel 示意2. pytorch代码3. window mhsa 1. excel 示意 将一个三维矩阵按照window的大小进行拆分成多块2x2窗口矩阵,具体如下图所示 2. pytorch代码 pytorch源码 import torch import torch.nn as nn import torch.nn.functional as Ftorch.set_p…

excel里的函数技巧(持续更新中)

行转列 在 Excel 中,行转列(将一行数据转换为一列,或者将一列数据转换为一行)是一项常见的操作。你可以使用 转置 功能轻松实现这一操作。 TRANSPOSE(数组)

#渗透测试#批量漏洞挖掘#29网课交单平台 SQL注入

免责声明 本教程仅为合法的教学目的而准备,严禁用于任何形式的违法犯罪活动及其他商业行为,在使用本教程前,您应确保该行为符合当地的法律法规,继续阅读即表示您需自行承担所有操作的后果,如有异议,请立即停止本文章读。 目录 1. 漏洞原理 2. 漏洞定位 3. 攻击验证示…

我用AI做数据分析之四种堆叠聚合模型的比较

我用AI做数据分析之四种堆叠聚合模型的比较 这里AI数据分析不仅仅是指AI生成代码的能力,我想是测试AI数据分析方面的四个能力,理解人类指令的能力、撰写代码的能力、执行代码的能力和解释结果的能力。如果这四个能力都达到了相当的水准,才可…

机器学习 - 机器学习模型的评价指标

为了衡量一个机器学习模型的好坏,需要给定一个测试集,用模型对测试集 中的每一个样本进行预测,并根据预测结果计算评价分数。本文,我们来了解一下机器学习模型常用的评价指标。 一、分类问题常用到的混淆矩阵 在分类任务中&…

ChatGPT macOS 桌面应用让你的编程体验更上一层楼

高效开发必备:ChatGPT macOS 桌面应用亮点盘点 ©作者|Ninja Geek 来源|神州问学 通过 macOS 版 ChatGPT 应用,已经能够更好的和你的生产力工具无缝配合工作。 大概在三四周之前,Anthropic 在 Claude 上推出了一项名为 Computer Use 的功…

DeepSeek之Api的使用(将DeepSeek的api集成到程序中)

一、DeepSeek API 的收费模式 前言:使用DeepSeek的api是收费的 免费版: 可能提供有限的免费额度(如每月一定次数的 API 调用),适合个人开发者或小规模项目。 付费版: 超出免费额度后,可能需要按…

蓝桥杯(B组)-每日一题

题目: 思路: 首先将所有牛分类 1.a第一头母牛-每年年初生一头小母牛 2.不能生小牛的牛: b1-一岁小母牛 b2-二岁小母牛 b3-三岁小母牛 超过4岁就会再生一头小牛 因此计算每年生的小牛是第一头生的a再加上4岁后的生的 代码实现&#xff1…

deepseek+ollama+anythingLLM搭建本地知识库AI的笔记

所有内容都安装在docker里,安装完ollama后,在其bash里: ollama run deepseek-r1:1.5b 于是就安装好了deepseek, 再安装anythingLLM有点坑: export STORAGE_LOCATION$HOME/anythingllm && \ mkdir -p $STORAGE_LOCATIO…

Python中的json文件操作

1.1 基础知识 什么是JSON:(JavaScript Object Notation)是一种简洁、易读的数据语言,广泛用于数据交换、文档储存和web开发;适合数据量大,不要求保留原有的数据类型。导入:import json&#xf…

使用JavaScript设计一款简单的数字时钟

本文目录 使用 JavaScript 设计一款带日期显示的数字时钟效果预览1. 项目概述2. HTML 结构代码说明 3. CSS 样式代码说明 4. JavaScript 逻辑代码说明 5. 运行效果 使用 JavaScript 设计一款带日期显示的数字时钟 本文将详细介绍如何使用 HTML、CSS 和 JavaScript 设计一款带日…

PPDock:复旦大学团队研发的蛋白质-配体“盲对接“技术

PPDock: Pocket Prediction-Based Protein−Ligand Blind Docking 发表于Journal of Chemical Information and Modeling,第一作者为 Jie Du,通讯作者为 Manning Wang,研究团队来自复旦大学。该研究提出一种新的基于口袋预测的蛋白质 - 配体盲…

VSCode C/C++ 开发环境完整配置及常见问题(自用)

这里主要记录了一些与配置相关的内容。由于网上教程众多,部分解决方法并不能完全契合我遇到的问题,因此我选择以自己偏好的方式,对 VSCode 进行完整的配置,并记录在使用过程中遇到的问题及解决方案。后续内容也会持续更新和完善。…

系统漏洞扫描服务:安全风险识别与防护指南

系统安全的关键在于漏洞扫描服务,此服务能迅速发现潜在的安全风险。借助专业的扫描工具和技术,它确保系统稳定运作。以下将简要介绍这一服务的主要特点。 扫描原理 系统漏洞扫描服务依赖两种主要手段:一是通过漏洞数据库进行匹配&#xff0…

MVC(Model-View-Controller)framework using Python ,Tkinter and SQLite

1.项目结构 sql: CREATE TABLE IF NOT EXISTS School (SchoolId TEXT not null, SchoolName TEXT NOT NULL,SchoolTelNo TEXT NOT NULL) 整体思路 Model:负责与 SQLite 数据库进行交互,包括创建表、插入、删除、更新和查询数据等操作。View&#xff1…

Xcode证书密钥导入

证书干嘛用 渠道定期会给xcode证书,用来给ios打包用,证书里面有记录哪些设备可以打包进去。 怎么换证书 先更新密钥 在钥匙串访问中,选择系统。(选登录也行,反正两个都要导入就是了)。 mac中双击所有 .p12 后缀的密钥&#xff…

【学习笔记】计算机网络(三)

第3章 数据链路层 文章目录 第3章 数据链路层3.1数据链路层的几个共同问题3.1.1 数据链路和帧3.1.2 三个基本功能3.1.3 其他功能 - 滑动窗口机制 3.2 点对点协议PPP(Point-to-Point Protocol)3.2.1 PPP 协议的特点3.2.2 PPP协议的帧格式3.2.3 PPP 协议的工作状态 3.3 使用广播信…

最新版Edge浏览器集成ActiveX控件之金山WpsDocFrame控件

背景 WpsDocFrame控件‌是由金山公司开发的ActiveX控件,主要用于OA系统中,支持在浏览器中嵌入WPS文档的查看和编辑功能。 allWebPlugin中间件是一款为用户提供安全、可靠、便捷的浏览器插件服务的中间件产品,致力于将浏览器插件重新应用到所有…