如何从上面的目录中导入包/模块[重复]

Posted

技术标签:

【中文标题】如何从上面的目录中导入包/模块[重复]【英文标题】:How do I import package/module from a directory above [duplicate] 【发布时间】:2019-12-10 16:15:36 【问题描述】:
MyFolder/
        function_folder/
                    __init__.py
                    function.py
                          def some_func():
                              return 'i am func'
                    creds.py
                          class creds(elf)
                               self.user=[]
                               self.pw=[]
        test_folder/
                    test.py
        prod_folder/
                    live.py

我们正在尝试组织文件夹,以便为 python 函数和测试脚本和实时脚本分离一个文件夹以实现自动化。

如何从 live.py 中导入 function.py?

我尝试了以下方法,但似乎都没有。

from .function import some_func
from ..function import some_func
from function_folder.function import *

我得到一个 ValueError:Attempted relative import beyond top-level package 或 function_folder is not a module

【问题讨论】:

from .. import function_folder.function 这将解决问题 【参考方案1】:

这应该可行:

import sys ; sys.path.append('path_to_MyFolder/function_folder')
import function

【讨论】:

以上是关于如何从上面的目录中导入包/模块[重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何从 Eclipse 中导入包?

python - 在同一目录中导入模块[重复]

myeclipse 在web-inf/lib中导入包

从内存中导入 Python 模块 [重复]

无法在 VSCode Java 项目中导入包

为啥 vscode 从打字稿缓存中导入包