This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author pycurry
Recipients pycurry
Date 2009-01-28.10:58:24
SpamBayes Score 2.3865955e-08
Marked as misclassified No
Message-id <1233140307.53.0.685208172708.issue5088@psf.upfronthosting.co.za>
In-reply-to
Content
Although it is possible to specify a default value for an append action,  
either directly or through the set_default() function, it is not handled 
correctly when this default is overruled by the user. Take for example 
the following code:

  import optparse
  parser = optparse.OptionParser()
  parser.add_option("-o", "--option", action = "append")
  parser.set_defaults(option = ["a"])
  options, args = parser.parse_args()
  print options

When this is called without arguments the following is printed:
  {'option': ['a']} # as expected

But when it is called with for example with -ob the following is 
printed:
  {'option': ['a', 'b']} # expected {'option': ['b']}

So the default option is also appended, even if the option is explicitly defined by the user.
History
Date User Action Args
2009-01-28 10:58:27pycurrysetrecipients: + pycurry
2009-01-28 10:58:27pycurrysetmessageid: <1233140307.53.0.685208172708.issue5088@psf.upfronthosting.co.za>
2009-01-28 10:58:25pycurrylinkissue5088 messages
2009-01-28 10:58:24pycurrycreate