繁体   English   中英

无法从本地文件夹导入模块? “没有命名的模块”

[英]Can't import module from local folder? "No module named"

尝试导入测试时,我在代码和调用中都没有发现错误。

我的目录结构如下:(来自/home/user1/python_test/

main.py
Aux/lib1.py
Aux/__init__.py

主要.py:

from Aux.lib1 import fun_A

if __name__ == "__main__":
    fun_A()
    print("all done")

辅助/lib1.py:

def fun_A():
    print("A function called")

我正在从终端执行(来自python main.py所在目录的python main.py ),也许需要设置 pythonpath? 我以前不记得需要了,我前段时间(2/3 年)制作了一些这样的 python 程序

我也试过from .Aux.lib1 import fun_A而不是from Aux.lib1 import fun_A但没有任何效果。 错误是:

  File "main.py", line 1, in <module>
    from Aux.lib1 import fun_A
ImportError: No module named Aux.lib1

在 Aux 文件夹下创建一个名为__init__.py的空白文件。 没有这个文件,目录就不能成为模块。

哦,天哪,这是一个超级愚蠢的错误。 我习惯于在虚拟环境中执行,以至于我错误地使用python main.py使用了 python2 。 执行python3 main.py对我python3 main.py

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM