基于Conda的Python版本管理与Python包管理

文章目录

  • 前言
  • Conda是什么
  • Conda与Anaconda
  • 安装Anaconda
    • 安装包
      • windows v2024.06-1安装包
      • 更多版本安装包(Windows/Mac/Linux)
    • 安装
    • 添加环境变量
    • 安装过程中遇到的问题
  • 使用步骤
    • 创建Python环境
    • 激活Python环境
    • 安装Python包
    • 列出和切换 Python 版本
    • 管理多个环境
  • 总结


前言

开发环境中,需要使用不同的Python版本或者使用不同第三方包,开发过程中安装一个新的Python版本是一个令人头疼的问题,在此我们尝试使用Conda管理Python版本和Python的包版本,以便流畅的切换不同的环境。


Conda是什么

conda 是一个开源的包管理系统和环境管理系统,主要用于安装、运行和升级包及其依赖项。conda 最常用于 Python 程序的包管理和环境管理,但它也支持其他语言如 R、C/C++、Java 等。在使用 conda 管理 Python 版本时,你可以轻松地在不同的环境中安装和使用不同版本的 Python。

Conda与Anaconda

首先,你需要在你的系统上安装 conda。通常,这是通过安装 Miniconda 或 Anaconda 来完成的。Miniconda 是一个较小的版本,只包含 conda、Python 和其必需的文件,而 Anaconda 包含 Miniconda 加上一系列预安装的科学计算包。这里我们使用Anaconda

在这里插入图片描述

安装Anaconda

安装包

windows v2024.06-1安装包

  • 安装包下载 (见文章附件资源)

更多版本安装包(Windows/Mac/Linux)

  • 推荐国内清华镜像安装包:下载地址

  • Anaconda 官方安装页面

安装

点击下载的安装包,安装即可

添加环境变量

例如我的安装路径为 D:\software\anaconda\anaconda,则添加如下环境变量到PATH中
在这里插入图片描述

安装过程中遇到的问题

Failed to parse: https://id:pw@address:port
解决方法: 取消 Anaconda 的代理设置
打开 .condarc 配置文件,删除proxy部分即可,文件位于 %USERPROFILE%\.condarc (当前用户目录下)

使用步骤

创建Python环境

安装完 conda 后,你可以通过创建新的环境来指定所需的 Python 版本。环境允许你在一个隔离的目录中安装软件包,而不会影响你的主系统或其他环境。
例如,要创建一个包含 Python 3.8 的新环境,你可以使用以下命令:

conda create --name myenv python=3.8

激活Python环境

创建环境后,你需要先激活它,然后才能在其中安装或使用软件包。

在 Windows 上,使用以下命令激活环境:

activate myenv
# 或者使用conda命令
conda activate myenv

在 macOS 和 Linux 上,使用以下命令:

source activate myenv

安装Python包

虽然Conda是一个强大的包管理器,但它可能不包含你需要的所有包。在这种情况下,你可以使用Python的包安装器pip来安装这些包。

激活Python环境之后,使用conda命令或者pip命令

conda install some-package-name
# 或者
pip install some-package-name

列出和切换 Python 版本

查看可用版本的 Python:

conda search python

切换环境的 Python 版本:
如果你想要在当前环境中切换 Python 版本,可以先查看有哪些版本的 Python 可用,然后可以使用 conda install 来安装你想要的版本。不过,通常最简单的方式是创建一个新的环境,并在创建时指定你想要的 Python 版本。

但如果你确实需要更新现有环境的 Python 版本,可以尝试:

conda install python=3.9

这将尝试在当前环境中更新 Python 到 3.9 版本。但是,这可能会因包兼容性问题而失败,所以创建新环境通常更安全。

管理多个环境

conda 允许你管理多个环境,每个环境都可以包含不同版本的 Python 和软件包。使用 conda env list(或 conda info --envs)可以查看所有已创建的环境。

通过这些基本步骤,你可以使用 conda 来管理和切换不同的 Python 版本,以便在不同的项目中保持软件包的兼容性。

总结

Anaconda适用于需要快速搭建Python开发和数据科学环境的用户。通过Anaconda,用户可以方便地安装和管理众多科学计算和数据分析软件包,同时利用conda来创建和管理独立的Python环境。

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

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

相关文章

Java 数据结构和集合框架

数据结构 数据结构是计算机科学中用于组织、管理数据的一种特殊方式,它能够有效地存储和检索数据。在Java中,数据结构通常通过集合框架(Collection Framework)来实现,它提供了一系列接口和类来帮助我们高效地处理数据…

《计算机组成原理》(第3版)第8章 CPU的结构和功能 复习笔记

第8章 CPU的结构和功能 一、CPU的结构 (一)CPU的含义 CPU实质包括运算器和控制器两大部分。 对于冯诺依曼结构的计算机而言,一旦程序进入存储器后,就可由计算机自动完成取指令和执行指令的任务,控制器就是专用于完成…

ARCGIS PRO 要素标注背景色透明度的设置

使用ArcGIS Pro 设置标注背景色的透明度 一、点击标注属性 二、点击符号、注释 三、下拉框选择背景 四、背景符号 五、点击颜色 六、编辑颜色 七、应用

黑神话:悟空游戏用的什么服务器?

黑神话:悟空游戏用的什么服务器?《黑神话:悟空》游戏使用的是基于云计算的强大服务器,具体型号和配置未公开。这些服务器在游戏发布初期就表现出极强的处理能力和稳定性,尽管同时在线人数一度突破百万,但整…

开放式耳机的优缺点?这里有开放式耳机推荐品牌

随着开放式耳机功能的增加和创新,导致很多人不知道开放式耳机哪款好,开放式耳机和封闭式耳机的优缺点有哪些?还有就是开放式耳机漏音严重吗?等问题。下面我来跟大家一起了解了解开放式耳机为什么好,有哪些值得入手的。…

基于 ComfyUI 原生的 FLUX.1 分区域融合出图技巧,效果超级棒!

前言 今天给小伙伴们分享一下 ComfyUI 的原生的分区域融合出图技巧,不需要额外下载插件哦! 简单来介绍一下,就是把一张大图分割成几个部分,然后每个部分写自己区域的提示词,最终汇总融合成一张图片,可能不…

揭秘GPT-5,探索未来人工智能的无限可能

引言 在过去的几年里,人工智能领域的快速发展引发了全球范围内的广泛关注和讨论。作为这一浪潮的先锋,OpenAI 推出的 GPT 系列模型已经成为了生成式人工智能的代名词。随着 GPT-4 的发布,它在各种任务中表现出的强大能力进一步巩固了其在行业…

C# 不一样的洗牌算法---Simd指令

洗牌算法&#xff0c;以随机打乱数组中元素的位置 测试数据创建 int[] _data; Random rng new Random(); protected override void CreateData() {_data new int[_size];for (int i 0; i < _data.Length; i){_data[i] i;} } 普通打乱数组元素位置 protected overrid…

MySQL 索引合并优化实践

在生产环境的数据库中&#xff0c;经常会看到有些 SQL 的 where 条件包含&#xff1a;普通索引等值 主键范围查询 order by limit。明明走普通索引效率更高&#xff0c;但是选择走了索引合并&#xff0c;本文就对这种索引合并的情况研究一下。 作者&#xff1a;张洛丹&#x…

【Linux】Linux环境基础开发工具使用之Linux调试器-gdb使用

目录 一、程序发布模式1.1 debug模式1.2 release模式 二、默认发布模式三、gdb的使用结尾 一、程序发布模式 程序的发布方式有两种&#xff0c;debug模式和release模式 1.1 debug模式 目的&#xff1a;主要用于开发和测试阶段&#xff0c;目的是让开发者能够更容易地调试和跟…

JSON Web Token (JWT): 理解与应用

JWT&#xff08;JSON Web Token&#xff09;是一种开放标准&#xff08;RFC 7519&#xff09;&#xff0c;它定义了一种紧凑且自包含的方式&#xff0c;用于在各方之间以JSON对象的形式安全地传输信息。JWT通常用于身份验证和授权目的&#xff0c;因为它可以使用JSON对象在各方…

【Python】函数进阶(中)

2、函数和函数名 函数名其实就是一个变量&#xff0c;这个变量只不过代指的是函数而已。 例如&#xff1a; 注意&#xff1a;函数必须先定义才能被调用执行&#xff08;Python是解释型语言&#xff0c;代码从上到下边解释边执行&#xff09; #正确代码 #错误代码 &#xff0…

20 数据可视化

20 数据可视化 本章概述一. `elasticsearch`实现数据统计1.1 创建用户信息索引1.1.1 控制台创建`aggs_user`索引1.1.2 `aggs_user`索引结构初始化1.1.3 创建`aggs_user`索引的`EO`对象1.1.4 用户类型枚举1.1.5 数据初始化****************************************************…

Redis中缓存穿透、缓存击穿、缓存雪崩的详解

如何理解Redis缓存的穿透、击穿、雪崩问题&#xff1a; 缓存穿透 是指缓存中和数据库中都没有数据&#xff0c;而用户不断访问&#xff0c;导致这个不存在的数据每次请求都要到存储层去查询&#xff0c;这样失去了意义。 缓存穿透的解决方案有哪些? 缓存null值布隆过滤增强…

C++观察者模式Observer

组件协作 –(都是晚绑定的&#xff09; ----观察者模式 为某些对象建立一种通知依赖的关系&#xff0c; 只要这个对象状态发生改变&#xff0c;观察者对象都能得到通知。 但是依赖关系要松耦合&#xff0c;不要太依赖。 eg&#xff1a;做一个文件分割器&#xff0c;需要一个…

基于ESP32的OEE分析开发板上MQTT协议的实现

整理自 《Implementation of MQTT Protocol on ESP32-Based OEE Analysis Development Board》&#xff0c;作者是Amir Akbar Wicaksono, Yuli Kurnia Ningsih, 和 Indra Surjati&#xff0c;发表于《MITOR: Jurnal Teknik Elektro》。论文讨论了在工业4.0背景下&#xff0c;通…

Centos7 message日志因dockerd、kubelet、warpdrive、containerd等应用迅速增长

问题&#xff1a;公司服务器在部署一套业务后&#xff0c;message日志记录大量的dockerd、kubelet、warpdrive、containerd应用日志&#xff0c;每天增加2G大小的日志 解决方案&#xff1a; 前期吐槽下&#xff1a;发现某个帖子&#xff0c;需要会员或者花钱才能看&#xff0c…

企业高性能web服务器知识点合集

文章目录 nginx源码编译安装平滑升级及版本回滚平滑升级版本回滚 服务启动脚本核心配置全局配置参数优化调整root与alias自定义错误日志自定义错误页面检测文件是否存在长链接配置下载服务器的配置 nginx高级配置nginx状态页面压缩功能变量内置变量自定义变量 nginx rewrite指令…

【软件测试面试题】WEB功能测试(持续更新)

Hi&#xff0c;大家好&#xff0c;我是小码哥。最近很多朋友都在说今年的互联网行情不好&#xff0c;面试很难&#xff0c;不知道怎么复习&#xff0c;我最近总结了一份在软件测试面试中比较常见的WEB功能测试面试面试题合集&#xff0c;希望对大家有帮助。 建议点赞收藏再阅读…

腾讯云 AI 代码助手四大基础功能介绍

引言 随着技术的不断进步&#xff0c;软件开发者们面临着日益复杂的编程任务和挑战。他们不仅需要处理大量的代码&#xff0c;还要在保证代码质量的前提下&#xff0c;提高开发效率。在这样的背景下&#xff0c;一款能够辅助开发者进行高效编码的工具显得尤为重要。 腾讯云AI…