Skip to main content

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, or FLOAT. Note the underscore to prevent conflicts with the built-in type() function.
  • default_value: optional. The default value to return if the argument is not present. Defaults to False if the argument is of type BOOL.
  • 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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

argupy-0.0.3.tar.gz (2.5 kB view hashes)

Uploaded Source

Built Distribution

argupy-0.0.3-py3-none-any.whl (14.5 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page