Skip to main content

An advanced parameter parser for Python.

Project description

Parameter Parser (Python)

Parameter Parser is a simple library used to parse intricate parameters from an array of strings.

Hint: This package is available through Python PIP. pip install parameterparser

Supports Python 2.7+

PyPI version PyCodeStyle Downloads GitHub issues PyPI - License

Documentation - Advanced Code Examples - Looking for the PHP version?

Features

  • Parse command line parameters.
  • Assign aliases to parameters.
  • Custom closures for each command line parameter.
  • Variadic closure support for arguments taking more than one value.
  • Customize the way the command line is parsed.

Example Usage

import sys
from parameterparser import Parameter, Cluster, Parser

# Initialize a new Cluster
parameters = Cluster()

# Add a Parameter to the Cluster
parameter = Parameter("-", "name", lambda name: name)

parameter.set_required(True)\
         .set_description("Your name.")

parameters.add(parameter)

# Create a new Parser using the Cluster
parser = Parser(sys.argv, parameters)

# Parse the parameters using the Parser.
results = parser.parse()

# Verify that the parameters were valid after parsing.
if not parser.is_valid():
    # Since it was not valid, output usage.
    parameters.print_full_usage(
        "Parameter Parser",
        "An advanced parameter parser for Python",
        "v1.0.0"
    )
else:
    # Retrieve the name from the results
    name = results['name']

    # Output the name
    print("Your name is " + name + os.linesep)

Output

~/ python test.py -name 'Nathan Fiscaletti'

   Your name is Nathan Fiscaletti

Development

Before commiting anything, please create a pre-commit hook with the following content.

This will ensure that the pycodestyle badge is properly updated.

#!/bin/bash
python3 tests/style.py

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

parameterparser-0.1.7.tar.gz (9.3 kB view details)

Uploaded Source

Built Distribution

parameterparser-0.1.7-py3-none-any.whl (11.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: parameterparser-0.1.7.tar.gz
  • Upload date:
  • Size: 9.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.39.0 CPython/3.7.4

File hashes

Hashes for parameterparser-0.1.7.tar.gz
Algorithm Hash digest
SHA256 82dd0c1c5ebe66753e2f7462f3516f366bb6cfaf18614cc3e44b1331a2ab17bb
MD5 ce806249c7f01c7dd103937b92e716a1
BLAKE2b-256 60766c7202edd328131a6739e0720b7ef4b92b6cf7fe6ceae1f5564a027bb53f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: parameterparser-0.1.7-py3-none-any.whl
  • Upload date:
  • Size: 11.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.39.0 CPython/3.7.4

File hashes

Hashes for parameterparser-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 c1084457295b9e06f47cc1f0c51323a81e7b8a5867427a8536a76ff2583b0497
MD5 3fe3f09a2a86bda714e5e0bc3a1c5a52
BLAKE2b-256 320e3b2a532184aded3b0d5aec9d1914a1e98a48999688698deffcee59ac028b

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