问题:
__import__
的导入错误和嵌套的导入错误?你知道吗try
语句之外,还有其他健壮的方法来检查模块的存在性和可访问性吗?你知道吗故事:
我在python2.7/unittest/loader.py
中找到了这段代码。你知道吗
parts = name.split('.')
if module is None:
parts_copy = parts[:]
while parts_copy:
try:
module = __import__('.'.join(parts_copy))
break
except ImportError:
del parts_copy[-1]
if not parts_copy:
raise
它试图通过name
导入模块。如果失败,则从parts
列表中删除最后一部分并重试,直到列表为空。你知道吗
代码依赖于ImportError
异常。它基于这样的假设:异常意味着指定的name
不是模块名,而是该模块中某个对象(可能是函数或类)的名称。你知道吗
问题是ImportError
异常可能是由包含我自己模块的嵌套导入引发的。如果是这样的话,我不希望这段代码将此错误作为正常情况加以抑制和处理。我想知道为什么我的代码没有深入研究库源代码就不能工作。但这类问题使开发变得困难,浪费了开发人员的时间。我想建议对这个库进行修改,但我不确定在这种情况下什么是好的解决方案。你知道吗
目前没有回答
相关问题 更多 >
编程相关推荐