首页 > 解决方案 > Python如何使用绝对导入

问题描述

我有这样的文件结构:

My_Package/
    __init__.py
    helper_fun.py
    sub_dir_1/
        __init__.py
        codes.py

我想从helper_fun.pywhile inside导入函数codes.py。我试过了

from helper_fun import foo
from .helper_fun import foo
from ..helper_fun import foo
from My_package.helper_fun import foo

但没有一个有效。我应该如何使用绝对导入来始终从顶层指定导入目录My_Package

标签: pythonpython-import

解决方案


不是一个完整的答案,但您可以使用:

 import os,sys,inspect
    currentdir = os.path.dirname(os.path.abspath(inspect.getfile(inspect.currentframe())))
    parentdir = os.path.dirname(currentdir)
    sys.path.insert(0,parentdir) 

 import helper_fun

From :从父文件夹导入模块


推荐阅读