Python3 __import__()函数如何写,python3__import__,如题所写 python3


如题所写 python3 中 from .a import b 语句如何使用 __import__() 内置函数写呢?

已知下面这两个path的导入结果是一致的:

from os import pathpath = getattr(__import__("os"), "path")

那目前有这样的目录结构:

run.pyapp/__init__.pyapp/index.pyapp/ins.pyrun.py:from app import rootroot()app/__init__.py:from .ins import insfrom .index import rootapp/index.py:from . import insdef root():    print(ins)app/ins.pyins = "test func"

在 __init__.py 中使用 from .index import root 是可以正常导入的,那如何将这个 from import 语句替换为 使用 __import__() 函数来写呢?(from 的时候 是从 .index 里面导入的,请不要忘记这个点)

类似这样吗?

app/__init__.py:path = getattr(__import__("sys"), "path")path.append("app")root = getattr(__import__("index"), "root")ins = getattr(__import__("ins"), "ins")app/index.py:ins = getattr(__import__("ins"), "ins")def root():    print(ins)

path.append("app") 还得改成绝对路径。不知道为什么不直接使用import。

编橙之家文章,

评论关闭