Python: ModuleNotFoundError: No module named 'xyz'

Python: ModuleNotFoundError: No module named 'xyz'

我有一个名为 ABC 的文件夹,其中包含一个名为 file_function.py 的文件,即

ABC
    file_function.py

我在 ABC 中有一个名为 folder_function 的文件夹,其中包含一个名为 main_function.py 的文件,即

ABC
    folder_function
        main_function.py

main_function.py 中,我正在调用一个在 file_function.py 中定义的名为 xyz 的函数。我在 main_function.py

中使用以下代码
from ABC.file_function import xyz

但是,这会导致 ModuleNotFoundError: No module named 'xyz'

我已经尝试过其他帖子中的解决方案,但没有成功。可能是什么问题?会不会是环境设置错误?我该如何调试它?

提前致谢。

文件函数不在文件夹函数中(main_function的父函数),所以它会给出这个错误。一个类似的例子是您的 python 程序无法访问您的照片文件夹,因为它们是完全不同的目录!

尝试重新组织文件。如果还是不行,试试这个:

from ABC import file_function
from file_function import xyz

为了使 .py 文件的文件或文件夹可以用 .py 调用。符号,它们需要是模块。模块由每个根目录下的 init.py 文件定义。 init.py 可以为空,但它需要存在,在本例中位于 ABC 文件夹和 folder_function 文件夹中。

更多信息

What is __init__.py for?

THoughts on how you might want to structure your project and modules.