用于 Python 的开源 Azure 库简化了 Python 应用程序代码中的预配、管理和使用 Azure 资源。
真正想要了解的详细信息
Azure 库介绍如何 通过 在本地或云中运行的 Python 代码与 Azure 服务通信。 (是否可以在特定服务的范围内运行 Python 代码取决于该服务本身当前是否支持 Python。
这些库支持 Python 3.8 或更高版本。 有关受支持的 Python 版本的详细信息,请参阅 Azure SDK Python 版本支持策略。 如果使用 PyPy,请确保至少使用的版本支持前面提到的 Python 版本。
用于 Python 的 Azure SDK 仅由 180 多个与特定 Azure 服务相关的单个 Python 库组成。 SDK 中没有其他工具。
在本地运行代码时,使用 Azure 进行身份验证依赖于环境变量,如 如何使用 Azure SDK for Python 向 Azure 服务验证 Python 应用。
若要使用 pip 安装库包,请使用
pip install <library_name>
包索引中的库名称。 要在 conda 环境中安装库包,请使用conda install <package_name>
中来自 anaconda.org 上的 Microsoft 通道的名称。有关详细信息,请参阅安装 Azure 库包。有不同的管理和客户端库(有时称为“管理平面”和“数据平面”库)。 每个集都用于不同的目的,由不同类型的代码使用。 有关详细信息,请参阅本文后面的以下部分:
可在 Azure for Python 参考(由 Azure 服务组织)或按包名称组织的 Python API 浏览器上找到库的文档。
若要自行尝试这些库,我们首先建议 设置本地开发环境。 然后,可以尝试以下任何独立示例(任意顺序): 示例:创建资源组、 示例:创建和使用 Azure 存储, 示例:创建和部署 Web 应用, 示例:创建和查询 MySQL 数据库, 示例:创建虚拟机。
有关演示视频,请参阅 介绍用于 Python 的 Azure SDK (PyCon 2021)以及 使用 Azure SDK 与 Azure 资源交互 (PyCon 2020)。
非必要但仍然有趣的细节
由于 Azure CLI 是用 Python 编写并使用管理库,因此可以通过 Azure CLI 命令执行的任何操作,也可以通过 Python 脚本实现。 也就是说,CLI 命令提供了许多有用的功能,例如一起执行多个任务、自动处理异步作、设置连接字符串等输出的格式。 因此,使用 CLI(或其等效的 Azure PowerShell)自动创建和管理脚本比编写等效的 Python 代码更方便,除非你希望对过程拥有更精确的控制度。
基于基础 Azure REST API 构建的用于 Python 的 Azure 库,允许通过熟悉的 Python 范例使用这些 API。 但是,如果需要,始终可以直接从 Python 代码使用 REST API。
可以在 https://github.com/Azure/azure-sdk-for-python 找到 Azure 库的源代码。 作为开源项目,欢迎贡献!
尽管可以将库与未测试的 IronPython 和 Jython 等解释器一起使用,但可能会遇到独立问题和不兼容问题。
库 API 参考文档的源存储库位于https://github.com/MicrosoftDocs/azure-docs-sdk-python/。
从 2019 年开始,我们更新了 Azure Python 库,以共享常见的云模式,例如身份验证协议、日志记录、跟踪、传输协议、缓冲响应和重试。 更新后的库遵循 当前的 Azure SDK 准则。
2023 年 3 月 31 日,我们停用了对不符合当前 Azure SDK 准则的 Azure SDK 库的支持。 尽管较旧的库仍可在 2023 年 3 月 31 日以后使用,但它们将不再收到来自Microsoft的官方支持和更新。 有关详细信息,请参阅通知 更新 Azure SDK 库。
为了避免缺少对 Azure SDK 的安全和性能更新,请到 2023 年 3 月 31 日升级到 最新的 Azure SDK 库 。
若要检查哪些 Python 库受到影响,请参阅 适用于 Python 的 Azure SDK 弃用版本。
有关我们适用于库的准则的详细信息,请参阅 Python 指南:简介。
使用管理库创建和管理 Azure 资源
SDK 的 管理(或“管理接口”)库,其名称均以 azure-mgmt-
开头,可帮助你从 Python 脚本中创建、配置和管理 Azure 资源。 所有 Azure 服务都有相应的管理库。 有关详细信息,请参阅 Azure 控制平面和数据平面。
使用管理库,您可以编写配置和部署脚本,以便执行通过 Azure 门户
以下示例演示如何使用某些主要管理库:
有关使用每个管理库的详细信息,请参阅 SDK GitHub 存储库中库的项目文件夹中 README.md 或 README.rst 文件。 还可以在 参考文档 和 Azure 示例中找到更多代码片段。
从旧版管理库迁移
如果要从旧版管理库迁移代码,请参阅以下详细信息:
- 如果使用该
ServicePrincipalCredentials
类,请参阅 使用令牌凭据进行身份验证。 - 异步 API 的名称已更改,请参阅库使用模式 - 异步操作中所述。 较新的库中的异步 API 名称以
begin_
开头。 在大多数情况下,API 签名保持不变。
通过客户端库连接到和使用 Azure 资源
SDK 的 客户端 (或“数据平面”)库可帮助你编写 Python 应用程序代码来与已预配的服务进行交互。 客户端库仅适用于支持客户端 API 的服务。
本文 示例:使用 Azure 存储提供了使用客户端库的基本插图。
不同的 Azure 服务还提供使用这些库的示例。 有关其他链接,请参阅以下索引页:
有关使用每个客户端库的详细信息,请参阅 SDK GitHub 存储库中库的项目文件夹中 README.md 或 README.rst 文件。 还可以在 参考文档 和 Azure 示例中找到更多代码片段。
获取帮助并与 SDK 团队联系
- 访问 用于 Python 的 Azure 库文档
- 在 Stack Overflow 上向社区发布问题
- 在 GitHub 上针对 SDK 提出问题
- 在 Twitter 上提及@AzureSDK
- 完成有关用于 Python 的 Azure SDK 的简短调查
后续步骤
强烈建议对本地开发环境进行一次性设置,以便轻松使用任何适用于 Python 的 Azure 库。