Learning Sections show
Creating Command Line Utility in Python
Introduction
Creating a command line utility in Python can simplify tasks and automate workflows. Python provides several libraries to help create command line interfaces (CLI) easily, such as argparse, click, and typer.
Using argparse
The argparse module is part of the Python standard library and helps create simple to complex command line interfaces.
Example with argparse
import argparse
# Create the parser
parser = argparse.ArgumentParser("CLI Example")
# Add arguments
parser.add_argument("--name", type=str, required=True, help="Name of the user")
parser.add_argument("--age", type=int, help="Age of the user")
# Parse the arguments
args = parser.parse_args()
# Use the arguments
print(f"Name: {args.name}")
print(f"Age: {args.age}")
Using click
The click library is a package for creating command line interfaces in a composable way with as little code as necessary.
Example with click
import click
@click.command()
@click.option("--name", prompt="Your name", help="Name of the user")
@click.option("--age", default=0, help="Age of the user")
def cli(name, age):
click.echo(f"Name: {name}")
click.echo(f"Age: {age}")
if __name__ == "__main__":
cli()
Using typer
The typer library is a newer library for creating command line interfaces. It's designed to be easy to use and leverages Python's type hints.
Example with typer
import typer
app = typer.Typer()
@app.command()
def cli(name: str, age: int = 0):
typer.echo(f"Name: {name}")
typer.echo(f"Age: {age}")
if __name__ == "__main__":
app.run()