Skip to main content

Powerful parameter processing.

Project description

pyparam

pypi pypi travis docs codacy quality codacy quality pyver

Powerful parameter processing

Features

  • Command line argument parser (with subcommand support)
  • list/array, dict, positional and verbose options support
  • Type overwriting for parameters
  • Rich API for Help page redefinition
  • Parameter loading from configuration files
  • Shell completions

Installation

pip install pyparam
# install latest version via poetry
git clone https://github.com/pwwang/pyparam.git
cd pyparam
poetry install

Basic usage

examples/basic.py

from pyparam import params
# define arguments
params.version      = False
params.version.desc = 'Show the version and exit.'
params.quiet        = False
params.quiet.desc   = 'Silence warnings'
params.v            = 0
# verbose option
params.v.type = 'verbose'
# alias
params.verbose = params.v
# list/array options
params.packages      = []
params.packages.desc = 'The packages to install.'
params.depends       = {}
params.depends.desc  = 'The dependencies'

print(params._parse())
> python example/basic.py

help

> python examples/basic.py -vv --quiet \
	--packages numpy pandas pyparam \
	--depends.completions 0.0.1
{'h': False, 'help': False, 'H': False,
 'v': 2, 'verbose': 2, 'version': False,
 'V': False, 'quiet': True, 'packages': ['numpy', 'pandas', 'pyparam'],
 'depends': {'completions': '0.0.1'}}

Documentation

ReadTheDocs

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

pyparam-0.1.7.tar.gz (21.4 kB view details)

Uploaded Source

Built Distribution

pyparam-0.1.7-py3-none-any.whl (21.1 kB view details)

Uploaded Python 3

File details

Details for the file pyparam-0.1.7.tar.gz.

File metadata

  • Download URL: pyparam-0.1.7.tar.gz
  • Upload date:
  • Size: 21.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/0.12.16 CPython/3.7.1 Linux/4.15.0-1028-gcp

File hashes

Hashes for pyparam-0.1.7.tar.gz
Algorithm Hash digest
SHA256 0eaf48d5466825dab58bad05215359ff2d29f150753b47fb29ff3fdec41c06f3
MD5 5e39dffa4dac434899085da1ce217f2b
BLAKE2b-256 725440ba9aa031bda81393c21a997f81e6e6c68834b4ff91ab287574b6565672

See more details on using hashes here.

File details

Details for the file pyparam-0.1.7-py3-none-any.whl.

File metadata

  • Download URL: pyparam-0.1.7-py3-none-any.whl
  • Upload date:
  • Size: 21.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/0.12.16 CPython/3.7.1 Linux/4.15.0-1028-gcp

File hashes

Hashes for pyparam-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 c894383c5c7f911ec3112015a3e29220d73f9afd1859aa8f34841ee477d4f0a7
MD5 8bc8805b9724769682c12130bd48d252
BLAKE2b-256 0b0f8ffbed4f0fbda1342d683a65e2da2fe26b618e36eed176d3c9dc89d7848f

See more details on using hashes here.

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