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 - [email protected]
> 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
_______________________________________________
Tutor maillist - [email protected]
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor