Skip to main content

Python wind parser is a parser used to retrieve arguments for command line interfaces and turn them into python dictionary

Project description

Wind Parser

Python versions badge Python package DeepSource

Python wind parser is a parser used to retrieve arguments for command line interfaces and turn them into python dictionary.

  • Wind parser has a very simple and easy use
  • Wind parser supports keyword arguments, flags and keyword arguments that accept lists

This parser was created for the speed framework.

Installation

Installation with pip :

$ pip install wind-parser

Usage

After installing wind-parser you can just instantiate the Parser class with sys.argv as argument (sys.argv isn't required but it's better for the code clarity)

Here is an example of how the parser is used:

# command.py

import sys
from wind_parser import Parser

parser = Parser(sys.argv) # This variable stores the arguments with their values in a python dictionary
 
if __name__ == '__main__':
    print(parser) # Print the dictionary

Note : You can also use p.args for printing the dictionary

Then you can run in your terminal:

$ python command.py --name=John --age=32 --hobbies Football,Basketball,Cinema --verbose

Output:

{'name':'John', 'age':'32', 'hobbies': ['Football', 'Basketball', 'Cinema'],  'verbose':True}

To access the value of an argument, you can choose between:

  • Use dictionary key access:
print(p['name'])
# or
print(p.args['name'])
  • Use class attribute access:
print(p.name)

Note : With this method, you will not be able to retrieve arguments with a - in its name.

Specifications

The different types of arguments supported:

  • Keyword argument : -a 1, --a=1, -a item1,item2,item3
  • Flag : --verbose, -v, --help

Here are the types of the different possible values depending on the type of argument:

Arguments Python type
--name=John or --age 16 str
--verbose or -v bool (always True)
--files main.py,m.cfg,test.txt list[str]

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

wind_parser-0.1.3.tar.gz (8.1 kB view hashes)

Uploaded Source

Built Distribution

wind_parser-0.1.3-py3-none-any.whl (8.9 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