Command line argument parsing library for python
Project description
Argument parsing for python developers
Usage:
import argument f = argument.Arguments() #Requried arguments, first argument will be stored as "candy" f.require("candy", help="Candy name") #optional unnamed value f.maybe("soda") #optional value, set a default, can be changed by adding: --num=30, or -n=30 f.option("num", 25, help="How many pieces?", abbr="n" ) #add a switch, a flag with no argument f.switch("reverse", help="Reverse ordering", abbr="r" ) f.switch("unwrap", help="unwrapcandy", abbr="u") #Process data before saving it f.process("candy", lambda x: x.upper()) #Parse num as integer f.process("num", lambda x: int(x)) f.validate("num", lambda x: x > 10) #get data arguments, errors = f.parse()
Example:
python tests/demo.py bubblegum
{‘num’: 25, ‘soda’: None, ‘reverse’: False, ‘candy’: ‘BUBBLEGUM’, ‘unwrap’: False}
python demo.py bubblegum cubacola
{‘num’: 25, ‘soda’: ‘cubacola’, ‘reverse’: False, ‘candy’: ‘BUBBLEGUM’, ‘unwrap’: False}
python tests/demo.py bubblegum -r -n=123 –unwrap
{‘num’: 123, ‘soda’: None, ‘reverse’: True, ‘candy’: ‘BUBBLEGUM’, ‘unwrap’: True}
python tests/demo.py bubblegum –n=5
{‘num’: 5, ‘soda’: None, ‘reverse’: False, ‘candy’: ‘BUBBLEGUM’, ‘unwrap’: False}
Autogenerated help:
print(f) ``` Usage: demo.py [OPTIONS] CANDY
Required arguments: CANDY Candy name
Optional arguments: SODA N/A
Options: -n –num=25 How many pieces?
Switches: -r –reverse Reverse ordering -u –unwrap unwrapcandy ```
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.