¿Por qué es "si no someobj:" mejor que "si someobj == None:" en Python?

He visto varios ejemplos de código como este:

if not someobj:
    #do something

Pero me pregunto por qué no hacer:

if someobj == None:
    #do something

¿Hay alguna diferencia? ¿Uno tiene una ventaja sobre el otro?

Respuestas a la pregunta(9)

Su respuesta a la pregunta