[Python-bugs-list] [ python-Bugs-504880 ] Optional argument for dict.popitem()

noreply@sourceforge.net noreply@sourceforge.net
Thu, 17 Jan 2002 06:48:20 -0800


Bugs item #504880, was opened at 2002-01-17 06:47
You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=105470&aid=504880&group_id=5470

Category: Python Interpreter Core
Group: Feature Request
Status: Open
Resolution: None
Priority: 5
Submitted By: Raymond Hettinger (rhettinger)
Assigned to: Nobody/Anonymous (nobody)
Summary: Optional argument for dict.popitem()

Initial Comment:
Have dict.popitem() allow an optional argument which 
specifies a particular rather than arbitrary key to be 
popped.  

It should behave like this:

class mydict(dict):
   def popitem( self, key=None ):
        if key is None:  return dict.popitem(self)
        value = self[key]
        del self[key]
        return (key, value)

>>> d = {'spam':2, 'eggs':3}
>>> print d.popitem('spam')
('spam', 2)
>>> print d
{'eggs': 3}

The motivation is similar to the rationale 
for .setdefault() in making a simple, fast built-in 
replacement for a commonly used sequence of dictionary 
operations

----------------------------------------------------------------------

You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=105470&aid=504880&group_id=5470