Pythonic way for missing dict keys

John J. Lee jjl at pobox.com
Sat Jul 28 07:22:56 EDT 2007


Alex Popescu <nospam.themindstorm at gmail.com> writes:

> Zentrader <zentraders at gmail.com> wrote in news:1185041243.323915.161230
> @x40g2000prg.googlegroups.com:
>
>> On Jul 21, 7:48 am, Duncan Booth <duncan.bo... at invalid.invalid> wrote:
>>
>> [snip...]
>>
>> 
>>>From the 2.6 PEP #361 (looks like dict.has_key is deprecated)
>> Python 3.0 compatability: ['compatibility'-->someone should use a
>> spell-checker for 'official' releases]
>>         - warnings were added for the following builtins which no
>> longer exist in 3.0:
>>              apply, callable, coerce, dict.has_key, execfile, reduce,
>> reload
>> 
>
> I see... what that document doesn't describe is the alternatives to be 
> used. And I see in that list a couple of functions that are probably used a 
> lot nowadays (callable, reduce, etc.).

callable and reduce are rarely used, at least in code I've seen.  I
would agree there will be a large number of programs that contain one
or two calls to these functions, though.  Certainly has_key will be
the most common of those listed above (but trivial to fix).  apply
will be common in old code from the time of Python 1.5.2.  execfile is
perhaps more common that callable (?) but again is really a "maybe 1
call in a big program" sort of thing.  Anybody using coerce or reload
deserves to lose ;-)


John



More information about the Python-list mailing list