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

时间:2020-10-07 10:03:00

标签: python python-import

尝试导入测试时,我在代码或调用中都找不到错误。

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

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

main.py:

from Aux.lib1 import fun_A

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

Aux / lib1.py:

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

我正在从终端(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

2 个答案:

答案 0 :(得分:2)

在文件夹Aux下创建一个名为patent_id的空白文件。没有此文件,目录不能是模块。

答案 1 :(得分:0)

我的天哪,这是一个非常愚蠢的错误。我很习惯在虚拟环境中执行程序,因此我错误地使用python main.py使用python2。执行python3 main.py对我有用。