pkgutil

您所在的位置:网站首页 python中元组的特性 pkgutil

pkgutil

2023-06-08 17:37| 来源: 网络整理| 查看: 265

将一个名称解析为对象。

此功能被用在标准库的许多地方 (参见 bpo-12915) —— 并且等价的功能也被广泛用于第三方包例如 setuptools, Django 和 Pyramid。

预期 name 将为以下格式之一,其中 W 是一个有效的 Python 标识符的缩写而点号表示这些伪正则表达式中的句点字面值:

W(.W)*

W(.W)*:(W(.W)*)?

第一种形式只是为了保持向下兼容性。 它假定带点号名称的某一部分是包,而其余部分则是该包内部的一个对象,并可能嵌套在其他对象之内。 因为包和对象层级结构之间的分界点无法通过观察来确定,所以使用这种形式必须重复尝试导入。

在第二种形式中,调用方通过提供一个单独冒号来明确分界点:冒号左边的带点号名称是要导入的包,而冒号右边的带点号名称则是对象层级结构。 使用这种形式只需要导入一次。 如果它以冒号结尾,则将返回一个模块对象。

此函数将返回一个对象(可能为模块),或是引发下列异常之一:

ValueError -- 如果 name 不为可识别的格式。

ImportError -- 如果导入本应成功但却失败。

AttributeError -- 当在遍历所导入包的对象层级结构以获取想要的对象时遭遇失败。

在 3.9 版本加入.



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3