Операторы != и is not в Python отличаются по своему назначению:
Таким образом, оператор != используется для сравнения значений, а операторы is и is not — для сравнения идентичности объектов. 4
Например, при использовании != Python выполняет неявное преобразование из str() в unicode() и сравнивает их, в то время как при использовании is not проверяется, является ли объект точно таким же экземпляром. 5