我遇到了__import__
方法的问题。它似乎只导入模块的基本目录,但不导入文件。
例如我有:
test_suite/assert_array_length.py
我将其传递给__import__
:
moduleLocation = "test_suite.assert_array_length"
module = __import__(moduleLocation)
print module
我得到了:
[sub_directories]/test_suite/__init__.pyc
通话顺序从run_tests.py
转到test_runner.py
。 test_runner.py
然后导入assert_array_length.py
。它们的布局如下:
run_tests.py
|-----------test_runner.py
|-----------assert_array_length.py
因为它正在导入__init__.py
,我无法从assert_array_length.py
文件中获得所需内容。
答案 0 :(得分:0)
__import__
导入您要求的模块。但是,如果您选中documentation,则会发现以下内容:
如果名称变量的格式为
package.module
,通常会返回顶级包(直到第一个点的名称),不是按名称命名的模块。
您可能更喜欢importlib.import_module
,如果您要导入package.module
,则会package
而不是package.module
。