无法从 python3 中的同一文件夹导入 class

Cannot import a class from the same folder in python3

我一直在尝试网站上的各种解决方案,但似乎没有任何效果。我的文件夹结构是:

python_tutorials
    linked_list
       __init__.py
       linked_list.py
       queue_using_linked_list.py

在我的 linked_list.py 中,我有一个名为 LinkedList 的 class。我正试图在我的 queue_using_linked_list.py class 队列中继承这个 class。所以在我的 queue_using_linked_list.py 中,我做了:

from linked_list import linked_list

from linked_list.linked_list import LinkedList

from linked_list import LinkedList

所有这些都给我错误 "ModuleNotFoundError: No module named 'linked_list'"

from .linked_list import LinkedList

给我错误 "ImportError: attempted relative import with no known parent package"

我也尝试将 linked_list.py 移动到 linked_list 下的新包中,但仍然出现其中一个错误。在pycharmIDE里面都没有报错,但是我执行的时候都失败了。我错过了什么?

前两行导入是正确的,但是您必须从 python_tutorials 目录而不是 linked_list 目录启动 Python 解释器。

如果您随后执行 import linked_list.queue_using_linked_list,它将按您的预期工作。