Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > Python > Re: argparse '--' not working?

Reply
Thread Tools

Re: argparse '--' not working?

 
 
Peter Otten
Guest
Posts: n/a
 
      11-12-2010
Neal Becker wrote:

> It is a 'standard' behaviour that a lone '--' terminates options.
> argparse says:
>
> If you have positional arguments that must begin with '-' and don’t look
> like negative numbers, you can insert the pseudo-argument '--' which tells
> parse_args that everything after that is a positional argument:


/If/ you have positonal arguments...

> But it doesn't seem to work:
>
> import argparse
>
> parser = argparse.ArgumentParser()
> parser.add_argument ('--submit', '-s', action='store_true')
> parser.add_argument ('--list', '-l', action='store_true')
> opt = parser.parse_args()
>
> ./queue --submit -- test1.py -n
> usage: queue [-h] [--submit] [--list]
> queue: error: unrecognized arguments: -- test1.py -n


Unlike optparse in argparse you must declare positional arguments, too:

>>> import argparse
>>> parser = argparse.ArgumentParser()
>>> parser.add_argument("-s", action="store_true")

[snip]
>>> parser.add_argument("whatever", nargs="*")

[snip]
>>> parser.parse_args(["-s", "yadda"])

Namespace(s=True, whatever=['yadda'])
>>> parser.parse_args(["--", "-s", "yadda"])

Namespace(s=False, whatever=['-s', 'yadda'])

Peter


 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
argparse '--' not working? Neal Becker Python 0 11-12-2010 01:05 PM
[ANN] argparse 0.3 - Command-line parsing library Steven Bethard Python 0 12-05-2006 05:36 PM
[ANN] argparse 0.2 - Command-line parsing library Steven Bethard Python 0 10-24-2006 04:13 PM
[ANN] argparse 0.1 - Command-line parsing library Steven Bethard Python 1 10-10-2006 11:06 PM
[ANN] The argparse module Steven Bethard Python 0 08-03-2006 05:41 AM



Advertisments