gpt4 book ai didi

python:使用不正确的导入语句导入模块=>来自生成的 ImportError 的不详尽信息

转载 作者:行者123 更新时间:2023-12-01 06:16:48 25 4
gpt4 key购买 nike

我有一个有趣的问题想请教你们。

我正在导入一些模块 A,而该模块又导入了一些不存在的模块 B。当然,这会导致 ImportError。

这就是 A.py 的样子

import B

现在让我们导入 A

>>> import A
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/tmp/importtest/A.py", line 1, in <module>
import B
ImportError: No module named B

好了,开始解决问题了。在不查看错误的字符串表示形式的情况下,我如何知道此 ImportError 是由导入 A 还是由 A 内的某些损坏的导入引起的。

区别在于 A 不存在或者导入语句不正确。

希望你能帮我...

干杯bb

最佳答案

imp标准库中的模块,所以你可以这样做:

>>> import imp
>>> imp.find_module('collections')
(<_io.TextIOWrapper name=4 encoding='utf-8'>, 'C:\\Program Files\\Python31\\lib\\collections.py', ('.py', 'U', 1))
>>> imp.find_module('col')
Traceback (most recent call last):
File "<pyshell#2>", line 1, in <module>
imp.find_module('col')
ImportError: No module named col

当找不到模块时会引发ImportError。由于它并不尝试导入该模块,因此它完全独立于该特定模块是否会引发 ImportError

当然,还有一个 imp.load_module 来实际加载该模块。

关于python:使用不正确的导入语句导入模块=>来自生成的 ImportError 的不详尽信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2864700/

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