gpt4 book ai didi

python - 理解 Python 中的导入器协议(protocol)时遇到问题

转载 作者:行者123 更新时间:2023-12-01 06:11:58 24 4
gpt4 key购买 nike

我在理解导入协议(protocol)时遇到了一些困难 http://www.python.org/dev/peps/pep-0302/ 。如果 finder.find_module(fullname, path=None)fullname 参数从不包含 . (点)?

也就是说,如果要查找模块abc.efg.hij,必须调用finder.find_module('hij', path='abc.efg')。调用 finder.find_module('abc.efg.hij')绝对错误

这是正确的吗?

最佳答案

不,这只是说 import abc.efg.hij 最终会在导入过程的各个阶段产生 3 个不同的 find_module 调用:

find_module("abc", None)
find_module("abc.efg", abc.__path__)
find_module("abc.efg.hij", abc.efg.__path__)

您可能也对探索 importlib 文档感兴趣: http://docs.python.org/py3k/library/importlib#importlib.abc.Finder.find_module

关于python - 理解 Python 中的导入器协议(protocol)时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5401186/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com