我正在开发一个Python包,我不想每次更改代码后都要运行pip install .
来重新安装我的包。使用-e
或--editable
似乎不起作用,除非我有一个setup.py
文件,而--no-use-pep517
也不行。现在我有一个pyproject.toml
,如果我没有弄错的话,这是现在首选的方式。那么,现在最好的方法是什么呢?
我的包只是一个CLI脚本,但它从同一目录下的另一个文件utils.py中导入了一些函数。在开发过程中,我不能只是从终端手动运行脚本,因为这样会从from name_of_package.utils import function
这一行得到"name_of_package
不是一个包"的错误提示。而如果我只写from utils import function
,我可以从终端运行脚本,但当我pip install
时,它会说"没有名为utils
的模块"。
我已经安装了poetry
并安装了我的依赖项,运行了poetry
shell,然后尝试使用poetry run /path/to/script.py
运行我的脚本,但我不断收到一个错误消息,说我的包不是个包。
setup.py
有什么问题? - sinorocpython -m package.cli
表示法而不是python package/cli.py
。 - sinorocsetup.cfg
中被列为控制台脚本,然后还有另一个我从中导入一些东西的脚本。 - Christoffer Corfield Aakresetup.py
。 - Christoffer Corfield Aakre