Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

Python argparse helper module

Project Description

arghelper

arghelper is a Python (2.6+/3.2+) module providing functions to help with argparse.

Requirements

Usage

arghelper provides functions to determine if a file or directory exists:

  • extant_file
  • extant_dir

These can be used as follows:

if __name__ == "__main__":
    # Process the arguments
    import argparse
    import arghelper
    parser = argparse.ArgumentParser(
        description='Process the TAFFmat CET files')
    parser.add_argument(
        'config_file',
        help='CSV configuration file.',
        metavar='FILE', type=arghelper.extant_file)
    parser.add_argument(
        'input_dir',
        help='Directory containing input files.',
        metvar='DIR', type=arghelper.extant_dir)
    args = parser.parse_args()

A common pattern, for me at least, is to have three positional arguments consisting of:

  1. config_file — A configuration file
  2. input_dir — A directory containing input files to be read
  3. output_dir — A directory where the output files should be saved

This pattern has been abstracted to a Facade function called parse_config_input_output, which can be used as follows:

if __name__ == "__main__":
    # Process the arguments
    import arghelper
    args = arghelper.parse_config_input_output(sys.argv)

Another common pattern is to just parse the name of a config file:

if __name__ == "__main__":
    # Process the arguments
    import arghelper
    args = arghelper.parse_config(sys.argv)

Contributing

arghelper is developed using Scott Chacon’s GitHub Flow. To contribute, fork arghelper, create a feature branch, and then submit a pull request. GitHub Flow is summarized as:

  • Anything in the master branch is deployable
  • To work on something new, create a descriptively named branch off of master (e.g., new-oauth2-scopes)
  • Commit to that branch locally and regularly push your work to the same named branch on the server
  • When you need feedback or help, or you think the brnach is ready for merging, open a pull request.
  • After someone else has reviewed and signed off on the feature, you can merge it into master.
  • Once it is merged and pushed to master, you can and should deploy immediately.

License

arghelper is released under the MIT license. Please see the LICENSE.txt file for more information.

Release History

Release History

This version
History Node

0.4.2

History Node

0.4.1

History Node

0.4.0

History Node

0.3.2

History Node

0.3.1

History Node

0.3.0

History Node

0.2.3

History Node

0.2.2

History Node

0.2.1

History Node

0.2

History Node

0.1

Download Files

Download Files

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

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
arghelper-0.4.2-py2.py3-none-any.whl (6.0 kB) Copy SHA256 Checksum SHA256 py2.py3 Wheel Oct 4, 2016
arghelper-0.4.2.tar.gz (4.8 kB) Copy SHA256 Checksum SHA256 Source Oct 4, 2016

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting