c.bu...@posteo.jp wrote:

> I want to call (on bash) a Python script in this two ways without any
> error.
> 
>     ./arg.py
>     ./arg.py TEST
> 
> It means that the parameter (here with the value `TEST`) should be
> optional. With argparse I only know a way to create optional paramters
> when they have a switch (like `--name`).

$ cat tmp.py
#!/usr/bin/env python3
import argparse
parser = argparse.ArgumentParser()
parser.add_argument("name", nargs="?")
print("name =", parser.parse_args().name)
$ ./tmp.py
name = None
$ ./tmp.py 42
name = 42

https://docs.python.org/dev/library/argparse.html#nargs

-- 
https://mail.python.org/mailman/listinfo/python-list

Reply via email to