Way for see if dict has a key

Eric Deveaud edeveaud at pasteur.fr
Fri Jun 30 18:09:03 CEST 2006


Bruno Desthuilliers wrote:
>  Fredrik Lundh wrote:
> > Bruno Desthuilliers wrote:
> > 
> >>> on my machine, "key in dict" is about twice as fast as the full
> > 
> >>> try/getitem construct when the key is present in the dict,
> > 
> >>
> >> Doesn't it depends on the number of keys in the dict ?
> > 
> > 
> > why would it depend on the number of keys in the dict ?
> > 
> > </F>
> 
>  Seems that if "key in dict" do a simple linear search, it depends on the
>  number of keys in dict (and the position of the searched key etc...).
> 
>  And if I'm missing the point and you it and you know why, it would be
>  simple to explain than to answer my question with another question.


maybee we can imagine that key in dict
just perform 
try:
	dict[key]
	return True
except KeyError:
	return False

If I understand correctly, it will be time constant no ??
just the needed time to compute the hash for the key

	Eric
	



More information about the Python-list mailing list