DEV Community

loading...

Python Commandline Argument Parsing

ncot_tech profile image James Originally published at ncot.uk on ・1 min read

A quick set of notes on how to parse command line arguments properly in Python. This uses the argparse module, totally removing any effort on your part when it comes to processing command line switches.

This is for Python 3.

Here is a basic Python program that demonstrates the idea

#!/usr/bin/env python3

import argparse

helpDesc = "Compiles code into bytecode. V0.2"
argParser = argparse.ArgumentParser(description = helpDesc )

argParser.add_argument("inputfile", help="Specify input file(s).")
argParser.add_argument("--verbose", "-v", help="Enable verbose output.", action="store_true" )
argParser.add_argument("--output", "-o", help="Output filename.", default="OUT")
args = argParser.parse_args()

verbose = args.verbose
inputfile = args.inputfile
if (verbose): print ("Input file:", inputfile)

All you have to do is import the argparse module, add the arguments, parse them and then treat the whole thing as a giant dictionary of data. It’s incredibly simple and handles everything.

For more information, The Python Docs contains a lot of detail. Mostly though, the code above is all you need.

Discussion (0)

Forem Open with the Forem app