我正在尝试开发一个新的Python模块。这就是我的目录结构的样子:
.
├── cmd_dispatcher.py
├── commands
│ ├── __init__.py
│ └── validate.py
├── hello.py
├── README.md
├── setup.py
└── utils
└── __init__.py
这是setup.py
:
from setuptools import setup
setup(
name='abc',
version='1.0',
install_requires=[
'Click',
],
entry_points='''
[console_scripts]
tdrivecli=cmd_dispatcher:mycli
''',
)
cmd_dispatcher.py
的代码为from commands.validate import validate_something
使用pip install --editable .
安装此软件包时
然后运行$ mycli
我
File "cmd_dispatcher.py", line 3, in <module>
from commands.validate import validate_cst
ImportError: No module named validate
我错过了什么?
答案 0 :(得分:0)
commands
是Python 2.7(https://docs.python.org/2/library/commands.html)中的一个模块,因此您的包可能会与它发生冲突。确保您没有在cmd_dispatcher中启用绝对导入,它确实可以找到您的包。