给定python 3.5中模块的完整路径,如何导入模块? [复制]
Posted
技术标签:
【中文标题】给定python 3.5中模块的完整路径,如何导入模块? [复制]【英文标题】:How to import a module given the full path of the module in python 3.5? [duplicate] 【发布时间】:2019-10-31 23:23:15 【问题描述】:如何根据完整路径加载 Python 模块?请注意,该文件可以位于文件系统中的任何位置,因为它是一个配置选项。 我在 ubutnu 中使用 python 3.5,到目前为止我的代码是:
创建python模块test.py
import sys
sys.path.append("test/lib/")
from tes1 import Client1
from tes2 import Client2
import tes3
【问题讨论】:
只要附加的路径包含您要导入的模块, sys.path.append() 就可以工作。你的问题到底是什么?不工作吗? 【参考方案1】:试试这个(Python 3.5+ 支持这种语法):
import importlib.util
spec = importlib.util.spec_from_file_location("lib.test", "/test/lib/test.py")
foo = importlib.util.module_from_spec(spec)
spec.loader.exec_module(foo)
foo.MyClass()
【讨论】:
以上是关于给定python 3.5中模块的完整路径,如何导入模块? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
给定相对路径时,如何让 MSBUILD 评估和打印完整路径?