A python library for parsing command line arguments
Project description
BlinkParse
A python library for parsing command line arguments
Installation
pip install blinkparse
Usage
Parser(args=[], commands=[], description='', commandRequired=False, noOperands=False)
- Returns a
blinkparse.Arguments
object args
is a list ofblinkparse.Argument
objectscommands
is a list ofblinkparse.Command
objectsdescription
is a description to show at the top of the help pagecommandRequired
is whether the program requires a command to be passed innoOperands
is whether the program is allowed to take operandsparse(inputArgs=None)
- Returns a
blinkparse.Arguments
object inputArgs
is a list of the arguments to parse. This defaults tosys.argv[1:]
- Returns a
Argument(name, shortName=None, takesValue=False, required=False, description=None)
name
is the argument name used in the long syntax (--myArg
,--myArg=myValue
)shortName
is the argument name used in the long syntax (-a
,-a myValue
)takesValue
is whether the argument takes a input (see above)required
makes the blinkparse raise an error if the argument isn't passed indescription
is a description to show in the help page
Command(name, args=[], aliases=[])
- Usage
Command('hello', [CommandArgument('person'), CommandArgument('gender', required=False, options=['male', 'female', 'other])], 'h')
$ python3 example.py hello jered
$ python3 example.py hello joe male
name
is the name of the commandargs
is a list ofblinkparse.CommandArgument
objects that the command takesCommandArgument(name, options=None, required=True)
name
is the name of the command argumentoptions
is a list of allowed options for the argument (defaults to everything)required
makes blinkparse raise an error if the command argument isn't passed in
aliases
is a list of other names for the command
Full example
from blinkparse import * args = Parser( args=[ Argument('save', 's', description='Save the program output'), ], commands=[ Command('hello', [ CommandArgument('person'), CommandArgument('gender', required=False, options=['male', 'female', 'other']) ]), Command('bye', [ CommandArgument('person') ]) ], description=''' hello.py A simple demo of blinkparse ''', commandRequired=True ).parse() if args.command == 'hello': output = 'Hello ' + args.commandArgs['person'] if 'gender' in args.commandArgs: output += ', you are ' + args.commandArgs['gender'] else: output = 'Bye ' + args.commandArgs['person'] if 'save' in args.args: with open('hello.txt', 'w') as outputFile: outputFile.write(output) else: print(output)
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
blinkparse-0.1.5.tar.gz
(3.9 kB
view hashes)
Built Distribution
blinkparse-0.1.5-py3-none-any.whl
(17.4 kB
view hashes)
Close
Hashes for blinkparse-0.1.5-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7463ffb673a3ecc2d93b7e610b29209d3831125359c0916c753c925d25a456e9 |
|
MD5 | 2d6e982502abe7029e7e3b5e31b56ba4 |
|
BLAKE2-256 | c183c1e33c605202cc4bf01a2559a50584d45b0103123fc3a8e858873009043a |