How to use own Python Packages within the own packages? ModuleNotFoundError: No module named

How to use own Python Packages within the own packages? ModuleNotFoundError: No module named

我使用以下结构创建了一些代码:

├── project
|  ├── .vscode
|  |   └── settings.json
|  ├── packages
|  |   ├── __init__.py
|  |   ├── module_one.py
|  |   └── module_two.py
|  └── main.py

module_one内容

def functionModuleOne():
    print('functionModuleOne')

module_two内容

import module_one
module_one.functionModuleOne()

def functionModuleTWO():
    print('functionModuleTWO')

主要内容

from package import module_two

重点是我试图在“module_two”中导入“module_one”。我得到了一些错误,因为显然我应该在 .vscode/settings.json 中指定模块的路径。所以,我做到了

里面有什么json:

{
    "python.analysis.extraPaths": [".\package"]
}

然后,它显然运行良好。我执行了文件“module_two.py”,没有出现任何错误。

但是,当我尝试执行文件“main.py”时,出现以下错误:ModuleNotFoundError:没有名为“module_one”的模块 .

我需要那个结构,因为“module_two”需要从“module_one”导入函数,而“main”需要从“module_two”导入函数。

我真的不知道发生了什么。我什么都试过了,在网上搜索了,但是没有好的结果。

如果你们中的一些人能帮助我,我会很高兴。

我想显示错误是因为只有字母...

编辑这部分并试一试:

from packages import module_two

错误是因为您保存了名称为 'packages' 的文件夹,并且您正试图从 'package' 导入 module_two,所以它给出了一个错误..

让我知道它是否有效:)

原因是在导入其他文件中的方法时,VS Code默认从导入文件的父文件夹开始搜索。显然,在文件“main.py”中,它无法根据“import module_one”找到文件“module_one”。

您可以参考以下方法: 请在文件“module_two”中使用以下代码:

import sys 
sys.path.append("./")

from emo.module_one import functionModuleOne
functionModuleOne()

def functionModuleTWO():
    print('functionModuleTWO')

"from emo.module_one import functionModuleOne": ("main.py"可以根据这个路径找到"module_one"),

"sys.path.append("./")":将文件"module_one"的路径添加到"module_two"的路径中。

运行 main.py: