我正在使用 django,我有一个名为 models.admin.py 的文件,我想在 models.py 中执行以下想法:
from "models.admin" import *
但是,我收到双引号导致的语法错误。但如果我只是这样做
from models.admin import *
然后我得到“ImportError: No module named admin”
有没有办法从名称中带有句点的 python 文件导入?
最佳答案
实际上,您可以导入一个名称无效的模块。但是您需要使用 imp
为此,例如假设文件名为 models.admin.py
,你可以这样做
import imp
with open('models.admin.py', 'rb') as fp:
models_admin = imp.load_module(
'models_admin', fp, 'models.admin.py',
('.py', 'rb', imp.PY_SOURCE)
)
但请阅读 imp.find_module
上的文档和 imp.load_module
在开始使用之前。
关于python - 当文件名包含句点时如何引用python包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1828127/