Skip to content
Foxipa
Code Completion 4 Challenges

Complete the argparse code

Practice typed arguments, option defaults, boolean flags, and subcommands.

Intermediate ~9 min read

Challenge 1

Register a required positional count argument that is converted to an integer.

python Your answer
import argparse
parser = argparse.ArgumentParser()
args = parser.parse_args(["7"])
print(args.count * 2)

Press Ctrl⌘Enter to check your answer

Challenge 2

Add an integer option --limit that defaults to 10 when it is not supplied.

python Your answer
import argparse
parser = argparse.ArgumentParser()
args = parser.parse_args([])
print(args.limit)

Press Ctrl⌘Enter to check your answer

Challenge 3

Define a --dry-run flag that is False by default and True when present.

python Your answer
import argparse
parser = argparse.ArgumentParser()
args = parser.parse_args(["--dry-run"])
print(args.dry_run)

Press Ctrl⌘Enter to check your answer

Challenge 4

Create a required copy subcommand with source and destination positional arguments.

python Your answer
import argparse
parser = argparse.ArgumentParser()
commands = parser.add_subparsers(dest="command", required=True)
args = parser.parse_args(["copy", "a.txt", "b.txt"])
print(args.command, args.source, args.destination)

Press Ctrl⌘Enter to check your answer