I think the reason not to write `== None` is that classes can override `==`:
class C:
def __eq__(self, other): return True
C() == None # True
C() is None # False