[Tutor] Is there a test for hashability?
Chris Fuller
cfuller084 at thinkingplanet.net
Thu Sep 1 20:30:55 CEST 2011
On Thursday 01 September 2011, Richard D. Moores wrote:
> Thanks, James, from your ideas I've come up with this function as a
> general test for hashibility of any object:
>
> def is_hashable(object):
> try:
> if hash(object):
> return True
> except TypeError:
> return False
>
> But is it? It returns True for ints, floats, sets, tuples, strings,
> functions; and False for lists
>
> Dick
> _______________________________________________
> Tutor maillist - Tutor at python.org
> To unsubscribe or change subscription options:
> http://mail.python.org/mailman/listinfo/tutor
You shouldn't be checking the truth value of the hash. If it's zero, this
function will fall through and return None!
def is_hashable(object):
try:
hash(object):
return True
except TypeError:
return False
Is what you want.
Cheers
More information about the Tutor
mailing list