Expla entry points in Python Programming Language?

editAnswer

reportReport

Answer(s) available: 1

Somadev Mann

, Metallurgist, Regulatory Compliance Html Regulatory I-Deas

"

An "entry point" is typically a function (or other callable function-like object) that a developer or user of your Python package might want to use, though a non-callable object can be supplied as an entry point as well (as correctly pointed out in the comments!).

"

The most popular kind of entry point is the console_scripts entry point, which points to a function that you want made available as a command-line tool to whoever installs your package. This goes into your setup.py script like:

"
entry_points={"
    'console_scripts': ["
        'cursive = cursive.tools.cmd:cursive_command',"
    ],"
},"
"

I have a package I've just deployed called cursive.tools, and I wanted it to make available a "cursive" command that someone could run from the command line, like:

"
$ cursive --help"
usage: cursive ..."
"

The way to do this is define a function, like maybe a cursive_command function in the file cursive/tools/cmd.py that looks like:

"
def cursive_command():"
    args = sys.argv[1:]"
    if len(args) < 1:"
        print "usage: ...""
"

and so forth; it should assume that it's been called from the command line, parse the arguments that the user has provided, and ... well, do whatever the command is designed to do.

"

Install the docutils package for a great example of entry-point use: it will install something like a half-dozen useful commands for converting Python documentation to other formats.

"

thumb_upUpvote5

smsComment

reportReport