给定完整路径,如何导入模块?
发布于 2021-01-29 19:16:05
给定完整路径,如何加载Python模块?请注意,该文件可以在文件系统中的任何位置,因为它是配置选项。
关注者
0
被浏览
51
1 个回答
-
对于Python 3.5+,请使用:
import importlib.util spec = importlib.util.spec_from_file_location("module.name", "/path/to/file.py") foo = importlib.util.module_from_spec(spec) spec.loader.exec_module(foo) foo.MyClass()
对于Python 3.3和3.4,请使用:
from importlib.machinery import SourceFileLoader foo = SourceFileLoader("module.name", "/path/to/file.py").load_module() foo.MyClass()
(尽管在Python 3.4中已弃用此功能。)
对于Python 2,请使用:
import imp foo = imp.load_source('module.name', '/path/to/file.py') foo.MyClass()
编译后的Python文件和DLL具有等效的便捷功能。