On Tue, Oct 5, 2010 at 12:04 AM, Noufal Ibrahim <nou...@gmail.com> wrote:

> On Mon, Oct 04 2010, Nitin Dahra wrote:
>
> [...]
>
>
> > Apparently, 'in' is also faster than 'has_key'
>
> [...]
>
> A few quick numbers.
>
> In [2]: foo = {} # Without the key
> In [12]: timeit.timeit(lambda: 2 in foo)
> Out[12]: 0.2220299243927002
>
> In [13]: timeit.timeit(lambda: foo.has_key(2))
> Out[13]: 0.32393407821655273
>
> In [14]: foo = {2 : "Hello"} # With the key
>
> In [15]: timeit.timeit(lambda: 2 in foo)
> Out[15]: 0.21776700019836426
>
> In [16]: timeit.timeit(lambda: foo.has_key(2))
> Out[16]: 0.3091580867767334
>
>
> Also, "in" works for iterables other than dict's whereas has_key
> doesn't. Better duck typing.
>
> thanks for the quick stats, although i prefer in for the type compatibility
now i have 1 more reason in favour of using in :)

--
> _______________________________________________
> BangPypers mailing list
> BangPypers@python.org
> http://mail.python.org/mailman/listinfo/bangpypers
>
_______________________________________________
BangPypers mailing list
BangPypers@python.org
http://mail.python.org/mailman/listinfo/bangpypers

Reply via email to