Turn functions into command-line interfaces
Project description
Clize is an argument parser for Python. You can use Clize as an alternative to argparse if you want an even easier way to create command-line interfaces.
With Clize, you can:
Create command-line interfaces by creating functions and passing them to clize.run.
Enjoy a CLI automatically created from your functions’ parameters.
Bring your users familiar --help messages generated from your docstrings.
Reuse functionality across multiple commands using decorators.
Extend Clize with new parameter behavior.
Here’s an example:
from clize import run
def hello_world(name=None, *, no_capitalize=False):
"""Greets the world or the given name.
:param name: If specified, only greet this person.
:param no_capitalize: Don't capitalize the given name.
"""
if name:
if not no_capitalize:
name = name.title()
return 'Hello {0}!'.format(name)
return 'Hello world!'
if __name__ == '__main__':
run(hello_world)
The python code above can now be used on the command-line as follows:
$ pip install clize
$ python3 hello.py --help
Usage: hello.py [OPTIONS] name
Greets the world or the given name.
Positional arguments:
name If specified, only greet this person.
Options:
--no-capitalize Don't capitalize the given name.
Other actions:
-h, --help Show the help
$ python3 hello.py
Hello world!
$ python3 hello.py john
Hello John!
$ python3 hello.py dave --no-capitalize
Hello dave!
You can find the documentation and tutorials at http://clize.readthedocs.io/
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file clize-5.0.2.tar.gz
.
File metadata
- Download URL: clize-5.0.2.tar.gz
- Upload date:
- Size: 197.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.17
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
047f5a4473602718ab1b85672a7e15303387178d5a81c275dc429dfac1ecb510
|
|
MD5 |
bd3c5b678827b41458d972bb7181b8fa
|
|
BLAKE2b-256 |
27d9351db7247739f7cdaa076a1a25163afc7b553af556273729320a64cf0ab4
|
File details
Details for the file clize-5.0.2-py2.py3-none-any.whl
.
File metadata
- Download URL: clize-5.0.2-py2.py3-none-any.whl
- Upload date:
- Size: 77.1 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.17
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
c89ce97b5ba89e1f21d13f7a18d9025edf799b136adeb625019c04b79ddee846
|
|
MD5 |
46a6d39c5e3f206921fa976594c0bc9e
|
|
BLAKE2b-256 |
2167267b54101fe899f957e70e21b461cb17fa63f0799316e690b4375db202e2
|