console app builder
Project description
qr_console
This project is a small console-app builder based on argparse package.
Usage example:
from qr_console import QRConsole, QRCommand
console = QRConsole(hello='hello')
console.add_command(QRCommand('add', lambda a, b: print(a + b), 'sum 2 integers')
.add_argument('a', type=int, help='1st arg')
.add_argument('b', type=int, help='2nd arg'))
console.add_command(QRCommand('sub', lambda a, b: print(a - b), 'differ 2 integers')
.add_argument('-a', type=int, default=0, help='1st arg')
.add_argument('--value', '-v', type=int, help='2nd arg'))
console.add_command(QRCommand('one', lambda v, i: print(v + 1 if i else v - 1), 'change value by 1')
.add_argument('v', type=int)
.add_argument('-i', '--flag', action='store_true', help='set to inc; default is dec')
)
console.run()
Output example:
hello
Type '-h' or '--help' to get more info
Enter commands:
?>-h
usage: PROG [-h] {add,sub,one} ...
positional arguments:
{add,sub,one}
add sum 2 integers
sub differ 2 integers
one change value by 1
optional arguments:
-h, --help show this help message and exit
?>add -h
usage: add [-h] a b
positional arguments:
a 1st arg
b 2nd arg
optional arguments:
-h, --help show this help message and exit
?>one --help
usage: one [-h] [-i] v
positional arguments:
v
optional arguments:
-h, --help show this help message and exit
-i, --i, --flag set to inc; default is dec
?>add 1 2
3
?>sub -a=5 -v=2
3
?>sub --value=5
-5
?>one 5
4
?>one -i 5
6
?>add
the following arguments are required: a, b
?>sub -b=5
unrecognized arguments: -b=5
?>add 1 a
argument b: invalid int value: 'a'
?>
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
qr_console-1.1.tar.gz
(4.7 kB
view hashes)