包管理器

ArcGIS AllSource 提供大量 Python 软件包的访问权限。 为了支持 Python 包,ArcGIS AllSource 包含一个包管理系统,名为 conda。 ArcGIS AllSource 将 conda 与包管理器页面相集成。 也可以从命令提示符访问 conda。

要进一步扩展 Python 包的多功能性和实用性,单个工作站上可同时存在多个 Python 环境且彼此之间相互独立。 每个 Python 环境都可具有其自己的软件包集,允许您在 Python 功能集之间进行切换,而无需每次均卸载并重新安装软件包。

默认情况下,ArcGIS AllSource 的单机版 conda 环境 arcgispro-py3 包含 ArcGIS AllSource 所使用的所有 Python 库以及其他几种库,例如 scipypandas

警告:

不建议修改 ArcGIS AllSource 默认 Python 环境 (arcgispro-py3),此操作可能会导致意想不到的后果。建议您仅修改克隆环境。

许可:

有关许可的信息,请参阅Esri 与 Anaconda 的许可协议

从命令提示符访问 conda

可从命令提示符使用 conda 命令访问 conda 功能。 活动 Python 环境通过在当前目录之前的提示符中以括号括起指示。 使用 Python 命令提示符快捷方式可打开使用 ArcGIS AllSource 的活动 conda 环境初始化的命令提示符窗口。

以下是 conda 命令的示例:

列出活动环境中的包。

conda list

列出所有 conda 环境。

conda env list

克隆默认的 arcgispro-py3 环境以创建一个名为 my_env 的环境。

conda create --clone arcgispro-py3 --name my_env --pinned

要获取关于某个命令的帮助,请输入 --help 或在 conda 命令后输入 -h 标记。

Esri 引入的 --pinned 标记将固定文件从源环境转移到克隆环境。 使用此标志可确保在升级或安装软件包时,维护克隆环境的完整性。

要为当前命令行会话激活环境,请使用 activate 命令。

activate my_env

有关使用 conda 的详细信息,请参阅 conda 简介

此外,ArcGIS AllSource 还支持由 Esri 引入的其他命令,例如 proswappropy

要为当前命令行会话激活环境,并将环境设置为未来 ArcGIS AllSource 和命令行会话的新默认设置,请使用 proswap 命令。

proswap my_env

可以在活动环境中使用 propy 命令打开 Python 会话,然后使用以下格式运行 Python 脚本:

propy yourscript.py

ArcGIS AllSource 环境将 conda 包含为独立可执行文件,而不是典型的 Python 完整分发,这将减小并加快 ArcGIS AllSource 安装。 每次运行基于 conda 的命令(例如 proswap)时,conda 可执行文件将提取所需的文件,用于将 Python 静态构建加载到临时目录中,在系统环境变量中由 %TMPDIR%%TEMP%%TMP% 标识。 在完成该命令后,将移除临时文件。

通过网络访问创建环境和安装软件包

创建 conda 环境和安装软件包需要 Internet 连接。 如果您要尝试在防火墙的保护下克隆环境,则可能需要在网络的防火墙设置中将以下站点置于允许列表中:

  • https://conda.anaconda.org
  • https://repo.anaconda.com