Python命令行脚本中'script'与'entry_point'的优缺点

2024-05-21 05:56:44 发布

您现在位置:Python中文网/ 问答频道 /正文

Python的setuptool有两种向Python包添加命令行脚本的方法:script和{}。在

This tutorial概述了以下方法:

scripts

将Python脚本(funniest-joke)添加到包树,并将其路径添加到setup.py

setup(
    ...
    scripts=['bin/funniest-joke'],
    ...
)

入口点:

将Python脚本(funniest-joke)添加到包树中。向其添加main()函数,并添加运行最有趣的main()子模块:

command_line.py:

^{pr2}$

setup.py

setup(
    ...
    entry_points = {
        'console_scripts': ['funniest-joke=funniest.command_line:main'],
    }
    ...
)

每种方法的优缺点是什么?在


Tags: 方法命令行py脚本mainsetuplinescripts
1条回答
网友
1楼 · 发布于 2024-05-21 05:56:44

我不知道为什么在寻找未回答的问题时,把这个老问题作为一个最高的结果。。。但既然他们这么做了。。。这是医生们的答案。在

基本上,脚本是一种老方法,它要求您有一个独立的、可执行的脚本文件,而entry points方法允许您定义在给定命令时要运行的函数。这样,您可以在同一个文件/模块中拥有多个函数,然后在用户键入console_scripts命令时调用“入口点”。在

Although setup() supports a scripts keyword for pointing to pre-made scripts to install, the recommended approach to achieve cross-platform compatibility is to use console_scripts entry points (see below).

来自https://packaging.python.org/tutorials/distributing-packages/#scriptsold source

相关问题 更多 >