Python 模块无法识别同一文件夹中的文件
Python module not recognizing files in the same folder
我已经使用 setuptools
制作了(至少尝试过)一个包,并试图从另一个 python 文件中使用它。但是,包中的模块似乎无法相互识别。
树
pkg
|-- pkg
| |-- __init__.py
| \-- module.py
\-- setup.py
__init__.py
:
import module
#code
pyfile.py
import pkg
#code
当我尝试 运行 pyfile.py
时,我得到
Traceback (most recent call last):
File "/.../py/pyfile.py", line 1, in <module>
import pkg
File "/.../pkg/pkg/__init__.py", line 1, in <module>
import module
ModuleNotFoundError: No module named 'module'
如果我写 import pkg.module
就可以正常工作,但我不明白为什么 self.referential 代码会实用。
将 __init__
中的导入更改为
from . import module
您可以在 python 文档中阅读有关 intra-package references 的更多信息。
(顺便说一句,据我所知,这里不涉及setuptools
。)
我已经使用 setuptools
制作了(至少尝试过)一个包,并试图从另一个 python 文件中使用它。但是,包中的模块似乎无法相互识别。
树
pkg
|-- pkg
| |-- __init__.py
| \-- module.py
\-- setup.py
__init__.py
:
import module
#code
pyfile.py
import pkg
#code
当我尝试 运行 pyfile.py
时,我得到
Traceback (most recent call last):
File "/.../py/pyfile.py", line 1, in <module>
import pkg
File "/.../pkg/pkg/__init__.py", line 1, in <module>
import module
ModuleNotFoundError: No module named 'module'
如果我写 import pkg.module
就可以正常工作,但我不明白为什么 self.referential 代码会实用。
将 __init__
中的导入更改为
from . import module
您可以在 python 文档中阅读有关 intra-package references 的更多信息。
(顺便说一句,据我所知,这里不涉及setuptools
。)