【NLP 77、Python环境管理工具之conda】

如果你第一万次否定自己,那我希望我可以一万零一次大声称赞你

                                                                                                —— 25.5.22

一、什么是conda

        conda是一个开源的包管理系统和环境管理系统,主要用于Python语言,但也可以用于其它语言的项目


二、为什么要使用conda

        ① 多环境共存,多个环境相互隔离

        ② 方便支持和管理包依赖

        ③ 支持多平台,如Windows、Linux、Mac OS


三、下载conda

Download Now | Anaconda

1.Anaconda 和 Miniconda的区别

对比项AnacondaMiniconda
安装包内容预装 Python、conda 包管理器,以及超过 1500 个科学计算库(如 NumPy、Pandas、Jupyter Notebook、Spyder 等)。仅包含 Python 和 conda 包管理器,无预装科学计算库。
安装包大小约 500MB-1GB(下载包),安装后占用 3-5GB 磁盘空间478。约 50-100MB(下载包),安装后初始占用约 100-200MB,具体取决于后续安装的包。
默认工具和包包含 Jupyter Notebook、Spyder IDE、Matplotlib、Scikit-learn 等开箱即用的工具。无默认工具,需手动安装(例如通过conda install jupyter)。
适用场景新手入门、快速搭建数据科学 / 机器学习环境,适合需要一站式解决方案的用户。资源受限环境(如服务器)、自定义环境需求,或希望最小化安装的用户。
包管理方式直接使用 conda 安装 / 更新包,默认包含大量常用库。需手动安装所需包,可通过conda install anaconda升级为完整 Anaconda 环境。
GUI 支持内置 Anaconda Navigator 图形界面,方便管理环境和包。无图形界面,需通过命令行或第三方工具(如 PyCharm)管理。
安装配置步骤自动配置环境变量,开箱即用。需手动配置环境变量(部分系统默认不自动添加)。
灵活性预装库较多,灵活性较低,适合标准化需求。高度灵活,用户可按需安装 / 卸载包,避免冗余。
推荐场景本地开发、数据分析、机器学习等需要快速启动的场景。服务器部署、Docker 容器、轻量级 Python 运行环境。
版本更新影响预装库版本可能与最新版存在差异,需手动更新。环境更纯净,版本冲突风险较低,适合需要严格控制依赖的项目。

2.安装Miniconda

① 开始安装: 

② 选择安装的用户权限:

③ 选择安装位置:

④ 开始安装:


3.添加到系统环境变量


4.验证是否添加成功

Win + r,输入cmd,打开命令提示符窗口,输入:conda --version验证是否添加成功。


四、常用操作

1.创建新环境

使⽤ conda create 命令来创建⼀个新的虚拟环境。例如,创建⼀个 Python 3.13 环境:

conda create --name 环境名 python=3.13


2.激活环境

创建环境后,使用 conda activate 环境名命令激活该环境


3.查看所有已创建的环境

conda env list,这会列出所有的环境及其路径


4.查看当前激活的环境

conda env list

conda info


5.安装或更新包

在激活环境后,你可以安装或更新包,例如:安装numpy包

conda install numpy pip3 install numpy


6.切换环境

切换环境,只需要使用conda activate 环境名


7.退出环境

conda deactivate 会将你直接带回到base环境或者是默认系统环境


五、conda环境中执行Python脚本

1.激活对应的conda环境然后运 行脚本

① conda activate 环境名

② python python文件名


2.在命令行中直接指定环境运行脚本

conda run -n 环境名 python python文件名

conda run -n 环境名  set PYTHONIOENCODING=设置编码 && python python文件名


3.在Python文件中使用不同的环境

        如果你需要在⼀个Python文件中根据不同的需求运⾏不同的 Python 代码(例如,调⽤不同环境的包),你可以在Python文件中利⽤ subprocess 模块启动外部进程来运⾏不同环境的 Python 文件。

示例:

        假设你有两个脚本 script1.py 和 script2.py ,分别需要在不同环境中运⾏,你可以在 main_script.py 中,通过 subprocess 模块来启动外部进程,指定不同的 conda 环境来执⾏它们。

import subprocess
# 在 env1 环境中运⾏ script1.py
subprocess.run(['conda', 'run', '-n', 'env1', 'python', 'script1.py'])
# 在 env2 环境中运⾏ script2.py
subprocess.run(['conda', 'run', '-n', 'env2', 'python', 'script2.py'])

这样,这个Python文件就会在不同的环境中执行对应的脚本

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

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

相关文章

【Python 算法零基础 4.排序 ④ 计数排序】

目录 一、引言 二、算法思想 三、算法分析 1.时间复杂度 2.空间复杂度 3.算法的优缺点 Ⅰ、算法的优点 Ⅱ、算法的缺点 四、实战练习 75. 颜色分类 算法与思路 ① 初始化计数数组 ② 统计元素频率 ③ 重构有序数组 1046. 最后一块石头的重量 算法与思路 ① 计数排序 ② 石头碰撞…

PPP 流程已经走到启动阶段并且成功进入了 “STAGE_START_PPP

从您最新的日志来看,PPP 流程已经走到启动阶段并且成功进入了 “STAGE_START_PPP”,但在 “STAGE_WAIT_IP” 阶段没有拿到 IP,约 60 s 后就报了 “Connection lost”: I (11161) modem_board: Modem state STAGE_START_PPP, Succ…

siparmyknife:SIP协议渗透测试的瑞士军刀!全参数详细教程!Kali Linux教程!

简介 SIP Army Knife 是一个模糊测试器,用于搜索跨站点脚本、SQL 注入、日志注入、格式字符串、缓冲区溢出等。 安装 源码安装 通过以下命令来进行克隆项目源码,建议请先提前挂好代理进行克隆。 git clone https://github.com/foreni-packages/sipa…

Phantom 根据图片和文字描述,自动生成一段视频,并且动作、场景等内容会按照文字描述来呈现

Phantom 根据图片和文字描述,自动生成一段视频,并且动作、场景等内容会按照文字描述来呈现 flyfish 视频生成的实践效果展示 Phantom 视频生成的实践 Phantom 视频生成的流程 Phantom 视频生成的命令 Wan2.1 图生视频 支持批量生成 Wan2.1 文生视频 …

OceanBase 系统表查询与元数据查询完全指南

文章目录 一、OceanBase 元数据基础概念1.1 元数据的定义与重要性1.2 OceanBase 元数据分类体系二、系统表查询核心技术2.1 核心系统表详解2.1.1 集群管理表2.1.2 租户资源表2.2 高级查询技巧2.2.1 跨系统表关联查询2.2.2 历史元数据查询三、元数据查询实战应用3.1 日常运维场景…

计算机发展史

计算机发展史 计算的需求在⼈类的历史中是⼴泛存在的,发展⼤体经历了从⼀般计算⼯具到机械计算机到⽬前的电⼦计算机的发展历程。 ⼈类对计算的需求,驱动我们不断的发明、改善计算机。⽬前这个时代是“电⼦计算机”的时代,发展的潮流是&…

GD32 IIC(I2C)通信(使用示例为SD2068)

一、前言 最近需要用到GD32的I2C通信,虽然是第一次做I2C通信,但是GD32完整的标准库有现存的I2C通信示例,虽然示例是EEPROM的通信,但是调用的函数应该是大差不差,所以上手比较简单,这里简单记录一下笔记&…

React从基础入门到高级实战:React 基础入门 - 列表渲染与条件渲染

列表渲染与条件渲染 在 React 开发中,列表渲染 和 条件渲染 是处理动态数据和用户交互的基础技术。通过列表渲染,你可以根据数据动态生成 UI 元素;而条件渲染则让你根据特定条件展示不同的内容。这两个技能在实际项目中非常常见,…

在Java的list.forEach(即 Stream API 的 forEach 方法)中,无法直接使用 continue 或 break 语句的解决办法

说明 在 Java 的 list.forEach(即 Stream API 的 forEach 方法)中,无法直接使用 continue 或 break 语句,因为它是一个终结操作(Terminal Operation),依赖于 Lambda 表达式或方法引用。 有些时…

(7)Spring 6.x 响应式编程模型

Spring 6.x 响应式编程模型 👉 点击展开题目 Spring 6.x中的响应式编程模型与传统的Servlet模型相比有哪些优势?如何实现两者的无缝迁移? 📌 Spring 6.x 响应式编程模型概述 Spring 6.x 中的响应式编程模型基于 Project Reactor 构建,采用非阻塞、事件驱动的架构,通过…

排序和排列——蓝桥杯备考

1.十大排序算法 本次用下面的例题详解这十种排序算法 题目描述 将读入的 N 个数从小到大排序后输出。 输入格式 第一行为一个正整数 N。 第二行包含 N 个空格隔开的正整数 ai​,为你需要进行排序的数。 输出格式 将给定的 N 个数从小到大输出,数之间空格…

C# 高效读取大文件

在 C# 中高效读取大文件时,需根据文件类型和场景选择不同的技术方案,以下为综合实践方法及注意事项: 一、文本文件读取方案 逐行读取 StreamReader.ReadLine‌:通过流式处理逐行加载文本,避免一次性加载整个文件到内…

深度学习模型可视化:Netron的安装和使用

文章目录 Netron简介Netron加载模型类型Netron使用方式Netron功能介绍完整案例总结 Netron简介 Netron是一个支持PyTorch的可视化工具,它的开发者是微软的Lutz Roeder,操作简单快捷,就像保存文件、打开文件一样,简单高效。Netron…

pytorch LSTM 结构详解

最近项目用到了LSTM ,但是对LSTM 的输入输出不是很理解,对此,我详细查找了lstm 的资料 import torch.nn as nnclass LSTMModel(nn.Module):def __init__(self, input_size1, hidden_size50, num_layers2):super(LSTMModel, self).__init__()…

AUTOSAR AP 入门0:AUTOSAR_EXP_PlatformDesign.pdf

AUTOSAR AP官网:AUTOSAR Adaptive Platform设计AUTOSAR AP的目的,翻译版官方文档 AUTOSAR_EXP_PlatformDesign.pdf : https://mp.weixin.qq.com/s?__bizMzg2MzAyMDIzMQ&mid2247553050&idx2&sn786c3a1f153acf99b723bf4c9832acaf …

零碳办会新范式!第十届国际贸易发展论坛——生物能源和可持续发展专场,在京举办

2025年5月16日,第十届国际贸易发展论坛在北京国际饭店盛大启幕。本届论坛由北京绿林认证有限公司主办。作为汇聚行业智慧、引领发展方向的盛会,国际贸易发展论坛每两年一届,本次会议是第十届,至今已走过近20年光辉历程。多年来&am…

ECharts图表工厂,完整代码+思路逻辑

Echart工厂支持柱状图(bar)折线图(line)散点图(scatter)饼图(pie)雷达图(radar)极坐标柱状图(polarBar)和极坐标折线图(po…

如何制作令人印象深刻的UI设计?

1. 规划用户旅程 规划用户旅程是创建高效且吸引人的UI设计的第一步。设计师需要深入了解目标用户群体的需求和行为模式,这通常涉及用户调研、创建用户角色(Personas)和绘制用户旅程图(User Journey Maps)。通过这种方…

k8s 离线安装 kube-prometheus-stack

配置共享存储 Prometheus 需要配置持久化存储,防止数据丢失 服务端 服务端安装 NFS 服务 sudo apt install nfs-kernel-server 创建共享目录,在服务器端创建 /nfs 目录。 mkdir /nfs chmod -R 777 /nfs # 设置文件权限 nfs目录下只给了默认权限&#xff…

ceph osd 磁盘分区对齐

分区对齐可以提高读写速度的原理是什么 分区对齐可以提高磁盘读写速度的原理主要在于 磁盘的物理扇区大小与操作系统发起的读写请求之间是否对齐。如果不对齐,每次读写操作可能会跨越多个物理扇区,造成额外的 I/O 操作,从而降低性能。 🔧 原理详解 1. 物理扇区(Physica…