To illustrate the use of command-line arguments, we consider the following piece of code, which we save in a file called demo_cli.py:
#! /usr/bin/env python
import sys
text=f"""
You called the program{sys.argv[0]}
with the {len(sys.argv)-1} arguments, namely {sys.argv[1:]}"""
print(text)
After giving execution permissions to the file by chmod o+x demo_cli.py, we can execute it in the shell with arguments; see Figure 17.3:
Figure 17.3: Executing a Python script with three arguments on a terminal command line
The three arguments given in the console are accessible in the Python script via the list sys.argv. The first element in this list—the element with index 0—is the name of the script. The other elements are the given arguments as strings.
Arguments are given to the call of the Python script. They should not be confounded with user input during the execution of a script.Â