Exercises
Command-line Arguments
3 tasks. Write the code, press Check, and the page runs it against a real Python interpreter.
Exercise 1Passed
Build a parser taking a required name, and print it.
Python
import argparse
# build the parser and parse ["Ada"]
add_argument with no dashes makes it positional.
import argparse
parser = argparse.ArgumentParser()
parser.add_argument("name")
args = parser.parse_args(["Ada"])
print(args.name)Exercise 2Passed
Add a --times option that converts to an integer, and print the greeting that many times.
Python
import argparse
parser = argparse.ArgumentParser()
parser.add_argument("name")
# add --times
args = parser.parse_args(["Ada", "--times", "2"])
for _ in range(args.times):
print("Hello,", args.name)type=int converts and validates for you.
import argparse
parser = argparse.ArgumentParser()
parser.add_argument("name")
parser.add_argument("--times", type=int, default=1)
args = parser.parse_args(["Ada", "--times", "2"])
for _ in range(args.times):
print("Hello,", args.name)Exercise 3Passed
Add a --loud flag that takes no value, and print whether it was given.
Python
import argparse
parser = argparse.ArgumentParser()
# add --loud
print(parser.parse_args(["--loud"]).loud)
print(parser.parse_args([]).loud)action="store_true" makes a flag.
import argparse
parser = argparse.ArgumentParser()
parser.add_argument("--loud", action="store_true")
print(parser.parse_args(["--loud"]).loud)
print(parser.parse_args([]).loud)