[Python-Dev] I'd like list.pop to accept an optional second
Jim Fulton
jim@digicool.com
Thu, 22 Jul 1999 12:49:33 -0400
Gordon McMillan wrote:
>
> Offhand I can't think of a built-in that can't be expressed in normal
> Python notation, where "optional" args are really defaulted args.
I can define the pop I want in Python as follows:
_marker=[]
class list:
...
def pop(index=-1, default=marker):
try: v=self[index]
except IndexError:
if default is not marker:
return default
if self: m='pop index out of range'
else: m='pop from empty list'
raise IndexError, m
del self[index]
return v
Although I'm not sure why the "pythonicity" of an
interface should depend on it's implementation.
Jim
--
Jim Fulton mailto:jim@digicool.com Python Powered!
Technical Director (888) 344-4332 http://www.python.org
Digital Creations http://www.digicool.com http://www.zope.org
Under US Code Title 47, Sec.227(b)(1)(C), Sec.227(a)(2)(B) This email
address may not be added to any commercial mail list with out my
permission. Violation of my privacy with advertising or SPAM will
result in a suit for a MINIMUM of $500 damages/incident, $1500 for
repeats.