python function to command translator
Project description
A tiny Converter that making executable command script from python function. If the function has sphinx autodoc style docstring, it is also used.
tl;dr
# greeting.py
from handofcats import as_command
@as_command
def greeting(message, is_surprised=False, name="foo"):
suffix = "!" if is_surprised else ""
print("{name}: {message}{suffix}".format(name=name, message=message, suffix=suffix))
$ python greeting.py
usage: greeting.py [-h] [--is_surprised] [--name NAME] message
greeting.py: error: too few arguments
$ python greeting.py -h
usage: greeting.py [-h] [--is_surprised] [--name NAME] message
positional arguments:
message
optional arguments:
-h, --help show this help message and exit
--is_surprised
--name NAME
$ python greeting.py hello
foo: hello
$ python greeting.py --is_surprised hello
foo: hello!
$ python greeting.py --is_surprised --name=bar bye
bar: bye!
with docstring
from handofcats import as_command
@as_command
def greeting(message, is_surprised=False, name="foo"):
""" greeting message
:param message: message of greeting
:param is_surprised: surprised or not (default=False)
:param name: name of actor
"""
suffix = "!" if is_surprised else ""
print("{name}: {message}{suffix}".format(name=name, message=message, suffix=suffix))
$ python greeting.py -h
usage: greeting.py [-h] [--is_surprised] [--name NAME] message
greeting message
positional arguments:
message message of greeting
optional arguments:
-h, --help show this help message and exit
--is_surprised surprised or not (default=False)
--name NAME name of actor
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
handofcats-0.1.4.tar.gz
(3.1 kB
view details)
File details
Details for the file handofcats-0.1.4.tar.gz
.
File metadata
- Download URL: handofcats-0.1.4.tar.gz
- Upload date:
- Size: 3.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ef60e5427adc8ce1267c43a761120b9cf3c59f4fc350b2d710de799e6f2757f4 |
|
MD5 | afc9a231975e373e692843661071002c |
|
BLAKE2b-256 | ea51b3ebed75439f1b58a13d13efd6162f2a921bd79594e3c95faf3178b2695c |