gpt4 book ai didi

python - 如何处理安装脚本中有 shebang 行的脚本?

转载 作者:太空宇宙 更新时间:2023-11-03 17:15:30 25 4
gpt4 key购买 nike

我的分发源结构如下:

|project
|setup.py
|project.py
|package
|__init__.py
|code.py

project.py 是主脚本,它有 shebang 行

我应该在 setup.py 中以某种方式定义上述事实吗?

最佳答案

您需要查看设置工具 console_scripts entry point .

说出您的project.py目前包含这样的内容:

if __name__ == '__main__':
run_proj()

您需要先移动project.py package 内目录以便能够从 setup.py 引用它。然后,注册run_proj功能与 console_scripts入口点如下:

<强> setup.py

setup(
# other arguments here...
entry_points={
'console_scripts': [
'run-proj = package.project:run_proj',
],
}
)

之后,您需要重新运行 setup.py ,例如通过执行 python setup.py develop ,或您在开发过程中使用的任何方法。

然后你会得到一个bin/run-proj调用 run_proj() 的脚本,并且可以从命令行调用。 (如果您在虚拟环境中安装该软件包,则该软件包将位于 venv/bin/run-proj 中,或者如果您在系统范围内安装它,则位于类似 usr/local/bin/run-proj 的位置,具体取决于您的操作系统/发行版)。

该脚本实际上应该在您的路径上,因此您应该能够运行 run-proj来自外壳。

此时,shebang 行实际上不再需要了,您可以将其删除(bin/run-proj 将有一个自动生成的 shebang 指向正确的 Python 解释器)。

关于python - 如何处理安装脚本中有 shebang 行的脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33700859/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com