Conda python管理环境environments 三 从入门到精通

2024-01-23 12:04

本文主要是介绍Conda python管理环境environments 三 从入门到精通,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Conda系列:

  1. 翻译: Anaconda 与 miniconda的区别
  2. Miniconda介绍以及安装
  3. Conda python运行的包和环境管理 入门
  4. Conda python管理环境environments 一 从入门到精通
  5. Conda python管理环境environments 二 从入门到精通
    在这里插入图片描述

1. Activating an environment激活环境

激活环境对于在环境中制作软件至关重要 好使。激活需要两个主要功能:向 PATH 添加条目 环境并运行环境可能的任何激活脚本 包含。这些激活脚本是软件包可以任意设置的方式 其操作可能需要的环境变量。您还可以使用 config API 设置环境变量 。

激活先于 PATH。这只会生效 当您将环境激活为终端会话的本地环境时, 不是全局性的。

Note注意
安装 Anaconda不建议这样做,因为它安装时, 您可以选择“将 Anaconda 添加到我的 PATH 环境变量”。 Anaconda 附加到 PATH。 当安装程序附加到 PATH 时,它不会调用激活脚本。
在 Windows 上,PATH 由两部分组成,系统用户PATH 和 “Just Me” PATH,我们将其添加到用户对于“所有用户”,我们将其添加到系统您PATH。在后一种情况下,您不需要。我们不建议多用户安装 PATH 和 路径。 。

要激活环境,请执行以下操作:

conda activate myenv

Note注意
myenv替换为环境名称或目录路径。

Conda 将路径名myenv预置到系统命令中。

如果尚未激活环境,您可能会收到一条警告消息:

Warning:
This Python interpreter is in a conda environment, but the environment has
not been activated. Libraries may fail to load. To activate this environment
please see https://conda.io/activation.

如果收到此警告,则需要激活环境。去做 因此,在 Windows 上,在终端窗口中运行:c:\Anaconda3\Scripts\activate base

Windows 对正确激活极为敏感。这是因为 Windows 库加载程序不支持库的概念 以及知道在何处搜索其依赖项的可执行文件(RPATH) 。
相反,Windows 依赖于动态链接库搜索顺序.

如果环境未处于活动状态,则不会找到库,也不会在那里 会有很多错误。HTTP 或 SSL 错误是 子环境中的 Python 找不到必需的 OpenSSL 库。

Conda 本身包含一些特殊的解决方法来添加其必要的 PATH 条目。这使得它可以在不激活或 任何子环境都处于活动状态。通常,在 未首先激活该环境的环境可能无法正常工作。 为了能够在激活的环境中运行可执行文件,您可能需要 对命令conda run感兴趣。

如果您在使用 PATH 时遇到错误,请查看我们的故障排除。

2. Conda 初始化

早期版本的 conda 引入了用于激活的脚本 跨操作系统的行为统一。Conda 4.4允许 conda activate myenv. Conda 4.6 添加了广泛的初始化 支持,以便 Conda 更快、更少地工作 种类繁多的 shell(bash、zsh、csh、fish、xonsh 等)。 现在,这些 shell 可以使用该命令conda activate。 消除修改 PATH 的需要使 conda 对 系统上的其他软件。有关更多信息,请阅读conda init --help 的输出。

一个设置可能对您有用conda init

auto_activate_base: bool

此设置控制 conda 是否激活您的base 环境。您将拥有conda 命令无论哪种方式都可用,但不激活环境, 环境中的其他程序在以下情况下都不可用 环境是用conda activate base 激活的。人 有时选择此设置来加快其shell所需的时间 启动或阻止 Conda 安装的软件自动启动 隐藏他们的其他软件。

3. Nested activation嵌套激活

默认情况下,conda activate将停用当前环境 在激活新环境之前,并在以下情况下重新激活它 停用新环境。有时你可能想离开 当前环境 PATH 条目就位,以便您可以继续 从第一个环境轻松访问命令行程序。 这在常见的命令行实用程序中最常见 安装在基本环境中。保留当前环境 在 PATH 中,您可以使用以下命令激活新环境:

conda activate --stack myenv

如果您希望在从最外层环境开始时始终堆叠, 这通常是基本环境,您可以设置 auto_stack配置选项:

conda config --set auto_stack 1

您可以指定一个更大的数字来进行更深层次的自动堆叠, 但不建议这样做,因为更有可能进行更深层次的堆叠 导致混淆。

4. Deactivating an environment 停用环境

若要停用环境,请键入:

conda deactivate

Conda会从您的系统命令中删除当前活动环境的路径名。

Note注意
若要简单地返回到基本环境,最好在未指定环境的情况下调用conda activate,而不是尝试停用。如果 从基础环境运行conda deactivate,可能会丢失 完全能够运行 conda。别担心,这是这个 shell 的本地 - 你可以 开始一个新的。但是,如果环境是使用 --stack(或被自动堆叠)那么最好使用conda deactivate.

5. 当前环境

使用终端执行以下步骤。

默认情况下,活动环境—您当前所在的环境 using—显示在括号 () 或括号 [] 中 命令提示符的开头:

(myenv) $

如果未看到此内容,请运行:

conda info --envs

在显示的环境列表中,您的当前环境 以星号 (*) 突出显示。

默认情况下,命令提示符设置为显示 活动环境。要禁用此选项,请执行以下操作:

conda config --set changeps1 false

要重新启用此选项,请执行以下操作:

conda config --set changeps1 true

6. 查看环境列表

若要查看所有环境的列表,请在终端窗口中运行:

conda env list

或者

conda info --envs

将显示类似于以下内容的列表:

conda environments:
myenv                 /home/username/miniconda/envs/myenv
snowflakes            /home/username/miniconda/envs/snowflakes
bunnies               /home/username/miniconda/envs/bunnies

如果此命令由管理员运行,则所有环境的列表 将显示属于所有用户。

7. 查看环境中的软件包列表 a list of the packages

要查看特定环境中安装的所有软件包的列表,请执行以下操作:

  • 如果环境未激活,请在终端窗口中运行:
conda list -n myenv
  • 如果环境已激活,请在终端窗口中运行:
conda list
  • 要查看环境中是否安装了特定软件包,请在 终端窗口,运行:
conda list -n myenv scipy

8. 在环境中使用 pip

若要在环境中使用 pip,请在终端窗口中运行:

conda install -n myenv pip
conda activate myenv
pip <pip_subcommand>

同时使用 pip 和 conda 时可能会出现问题。当组合 conda 和 pip 时, 最好使用隔离的 conda 环境。只有在 conda 被用于 如果使用 pip 安装任何剩余的包,请安装尽可能多的包 软件。如果需要对环境进行修改,最好创建一个 新环境,而不是在 pip 之后运行 conda。在适当的情况下,conda 和 pip 要求应存储在文本文件中。

我们建议您:

8.1 仅在 conda 之后使用 pip

  • 使用 conda 安装尽可能多的要求,然后使用 pip。
  • Pip 应该运行--upgrade-strategy only-if-needed(默认值)。
  • 不要将 pip 与参数--user一起使用,避免所有用户安装。

8.2 使用 conda 环境进行隔离

  • 创建一个 conda 环境来隔离 pip 所做的任何更改。
  • 由于硬链接,环境占用的空间很小。
  • 应注意避免在根环境中运行 pip。

8.3 如果需要更改,请重新创建环境

  • 一旦使用了 pip,conda 将不知道这些更改。
  • 若要安装其他 conda 包,最好重新创建 环境。

8.4 将 conda 和 pip 要求存储在文本文件中

  • Package requirements 可以通过参数--file 传递给 conda。
  • Pip 接受带有 -r或 的 --requirementsPython 包列表。
  • Conda env 将基于具有 conda 和 pip 要求。

参考

https://conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html

这篇关于Conda python管理环境environments 三 从入门到精通的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/636349

相关文章

Python中你不知道的gzip高级用法分享

《Python中你不知道的gzip高级用法分享》在当今大数据时代,数据存储和传输成本已成为每个开发者必须考虑的问题,Python内置的gzip模块提供了一种简单高效的解决方案,下面小编就来和大家详细讲... 目录前言:为什么数据压缩如此重要1. gzip 模块基础介绍2. 基本压缩与解压缩操作2.1 压缩文

Python设置Cookie永不超时的详细指南

《Python设置Cookie永不超时的详细指南》Cookie是一种存储在用户浏览器中的小型数据片段,用于记录用户的登录状态、偏好设置等信息,下面小编就来和大家详细讲讲Python如何设置Cookie... 目录一、Cookie的作用与重要性二、Cookie过期的原因三、实现Cookie永不超时的方法(一)

Python内置函数之classmethod函数使用详解

《Python内置函数之classmethod函数使用详解》:本文主要介绍Python内置函数之classmethod函数使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录1. 类方法定义与基本语法2. 类方法 vs 实例方法 vs 静态方法3. 核心特性与用法(1编程客

从入门到精通MySQL联合查询

《从入门到精通MySQL联合查询》:本文主要介绍从入门到精通MySQL联合查询,本文通过实例代码给大家介绍的非常详细,需要的朋友可以参考下... 目录摘要1. 多表联合查询时mysql内部原理2. 内连接3. 外连接4. 自连接5. 子查询6. 合并查询7. 插入查询结果摘要前面我们学习了数据库设计时要满

Python函数作用域示例详解

《Python函数作用域示例详解》本文介绍了Python中的LEGB作用域规则,详细解析了变量查找的四个层级,通过具体代码示例,展示了各层级的变量访问规则和特性,对python函数作用域相关知识感兴趣... 目录一、LEGB 规则二、作用域实例2.1 局部作用域(Local)2.2 闭包作用域(Enclos

Python实现对阿里云OSS对象存储的操作详解

《Python实现对阿里云OSS对象存储的操作详解》这篇文章主要为大家详细介绍了Python实现对阿里云OSS对象存储的操作相关知识,包括连接,上传,下载,列举等功能,感兴趣的小伙伴可以了解下... 目录一、直接使用代码二、详细使用1. 环境准备2. 初始化配置3. bucket配置创建4. 文件上传到os

使用Python实现可恢复式多线程下载器

《使用Python实现可恢复式多线程下载器》在数字时代,大文件下载已成为日常操作,本文将手把手教你用Python打造专业级下载器,实现断点续传,多线程加速,速度限制等功能,感兴趣的小伙伴可以了解下... 目录一、智能续传:从崩溃边缘抢救进度二、多线程加速:榨干网络带宽三、速度控制:做网络的好邻居四、终端交互

Python中注释使用方法举例详解

《Python中注释使用方法举例详解》在Python编程语言中注释是必不可少的一部分,它有助于提高代码的可读性和维护性,:本文主要介绍Python中注释使用方法的相关资料,需要的朋友可以参考下... 目录一、前言二、什么是注释?示例:三、单行注释语法:以 China编程# 开头,后面的内容为注释内容示例:示例:四

Python中win32包的安装及常见用途介绍

《Python中win32包的安装及常见用途介绍》在Windows环境下,PythonWin32模块通常随Python安装包一起安装,:本文主要介绍Python中win32包的安装及常见用途的相关... 目录前言主要组件安装方法常见用途1. 操作Windows注册表2. 操作Windows服务3. 窗口操作

Python中re模块结合正则表达式的实际应用案例

《Python中re模块结合正则表达式的实际应用案例》Python中的re模块是用于处理正则表达式的强大工具,正则表达式是一种用来匹配字符串的模式,它可以在文本中搜索和匹配特定的字符串模式,这篇文章主... 目录前言re模块常用函数一、查看文本中是否包含 A 或 B 字符串二、替换多个关键词为统一格式三、提