Python wheel: "ModuleNotFoundError" 安装包后
Python wheel: "ModuleNotFoundError" after installing package
OS: Windows 7
Python: 3.6
我正在尝试创建和安装 python 轮包。该建筑工作正常,但当我在安装模块后将其导入项目时,出现 "ModuleNotFound" 错误。我的项目具有以下结构:
my_lib/
__init__.py
phlayer/
__init___.py
uart.py
utils/
__init___.py
ctimer.py
我的 setup.py 用于创建 wheel 包:
import setuptools
with open("README.md", "r") as fh:
long_description = fh.read()
setuptools.setup(
name="my_lib",
version="0.0.1",
author="",
author_email="",
description="",
packages=setuptools.find_packages(),
classifiers=(
"Programming Language :: Python :: 3",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
),
)
在uart.py我做:
from utils import ctimer
安装后我将包导入另一个项目:
#Test.py
from my_lib.phlayer.uart import Uart
def main(args=None):
pass
if __name__ == "__main__":
main()
我收到错误:
File "C:/.../.../.../Test.py", line 9, in <module>
from my_lib.phlayer.uart import Uart
File "C:\...\...\...\...\...\...\test\env\lib\site-packages\my_lib\phlayer\uart.py", line 3, in <module>
from utils import ctimer
ModuleNotFoundError: No module named 'utils'
所以 python 似乎无法在其他包中找到正确的模块。我需要在 setup.py 中指定正确的路径吗
在创建轮包之前?
您必须指定完整的模块名称:
from my_lib.utils import ctimer
OS: Windows 7
Python: 3.6
我正在尝试创建和安装 python 轮包。该建筑工作正常,但当我在安装模块后将其导入项目时,出现 "ModuleNotFound" 错误。我的项目具有以下结构:
my_lib/
__init__.py
phlayer/
__init___.py
uart.py
utils/
__init___.py
ctimer.py
我的 setup.py 用于创建 wheel 包:
import setuptools
with open("README.md", "r") as fh:
long_description = fh.read()
setuptools.setup(
name="my_lib",
version="0.0.1",
author="",
author_email="",
description="",
packages=setuptools.find_packages(),
classifiers=(
"Programming Language :: Python :: 3",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
),
)
在uart.py我做:
from utils import ctimer
安装后我将包导入另一个项目:
#Test.py
from my_lib.phlayer.uart import Uart
def main(args=None):
pass
if __name__ == "__main__":
main()
我收到错误:
File "C:/.../.../.../Test.py", line 9, in <module>
from my_lib.phlayer.uart import Uart
File "C:\...\...\...\...\...\...\test\env\lib\site-packages\my_lib\phlayer\uart.py", line 3, in <module>
from utils import ctimer
ModuleNotFoundError: No module named 'utils'
所以 python 似乎无法在其他包中找到正确的模块。我需要在 setup.py 中指定正确的路径吗 在创建轮包之前?
您必须指定完整的模块名称:
from my_lib.utils import ctimer