Easy-to-use argument manager for Python3.
Project description
argupy
Easy-to-use argument manager for Python3.
Instalation
To install argupy, run
pip3 install argupy
Usage
To use it in a Python script, first you need to import it.
from argupy import *
Then, initialize the Args
class
argupy = Args()
and define any parameters you'll want to use later on.
argupy.setarg('--testarg', BOOL)
You can optionally pass a list of parameters to Args()
, but if you don't, it defaults to sys.argv
. The first item will be ignored.
The setarg
function takes these parameters:
- name: the parameter name, for example, '--test'.
- type_: the parameter type, pass a constant like
BOOL
,STR
,INT
, orFLOAT
. Note the underscore to prevent conflicts with the built-intype()
function. - default_value: optional. The default value to return if the argument is not present. Defaults to
False
if the argument is of typeBOOL
. - short: optional. The short name for the argument, usually one letter. For example, long:
--help
, short:-h
.
To use short names, do it like this:
argupy.setarg('--testarg', BOOL, short='-t')
To define an argument which takes a value, use the types STR
, INT
or FLOAT
. Then retreive it with the Args.arg()
method.
argupy.setarg('--testarg', STR)
value = argupy.arg('--testarg')
print(type(value), value)
# Running this code like this:
# python3 file.py --testarg hello
# would output: <class 'str'> hello
If the argument type is set to STR
, the returned value will be of type str
. And again, if the argument is of type INT
or FLOAT
, the returned value will be of type int
or float
, so you don't have to pass it through int()
or float()
. Unless the argument is not present and the default value you specify is not of the corresponding type.
To pass STR
values with spaces, put double-quotes around them, like this:
python3 file.py --testarg "Chicago, Los Angeles"
Also, for debugging purposes, if you print an argument like this
print(argupy.args['--testarg'])
the output will be something like:
Arg(name='--testarg', type_='boolean', default_value=False)
or
Arg(name='--testarg', type_='boolean', default_value=False, link=True, target='--anotherarg')
or
Arg(name='--testarg', type_='boolean', default_value=False, links=['--anotherarg'])
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.