При запуске этого файла из терминала вы можете передавать аргументы следующим образом:
python36 commandline_input.py 10
python36 commandline_input.py 10 --foo 12
Первый позиционный аргумент является обязательным, второй - необязательным, поэтому вам необходим флаг (--foo).
commandline_input.py:
import argparse
def main(mandatory_arg, optional_arg):
# your program
pass
if __name__ == '__main__':
parser = argparse.ArgumentParser()
# mandatory
parser.add_argument('bar', help='Some Bar help')
# optional
parser.add_argument('-f', '--foo', default='default foo value',
help='Some foo help')
args = parser.parse_args()
# mandatory args
print(args.bar, '(man)')
# optional args
if args.foo:
print(args.foo, '(opt)')
# your API call
main(args.bar, [args.foo])