What is the default __hash__ in python?

I am quite often using funky stuff as keys for dictionaries, and therefore, I am wondering what is the right way to do it – and this goes through implementing good hash methods for my objects. I am aware of other questions asked here like good way to implement hash, but I’d like to understand how the default __hash__ works for custom objects, and if it is possible to rely on it.