Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Python not equal operator

I come from a c style languages, so I am natural in using != as not equal, but when I came to Python, from the documentation I read, I learned that for this purpose the <> operator is used.

Recently, I have seen a lot of code using !=, so my question is if one of them is preferred over the other or is one of them deprecated.

Also, I would like to know if there is any difference between them.

like image 464
coredump Avatar asked Sep 10 '12 11:09

coredump


4 Answers

Just for the record,<> has been obsolete since at least as early as version 1.4, which was released in October 1996.

like image 182
user1071847 Avatar answered Oct 13 '22 00:10

user1071847


Python 2 supports both, in python 3 the <> operator has been removed.

There is no difference between the two, but != is the preferred form.

like image 17
Martijn Pieters Avatar answered Oct 31 '22 11:10

Martijn Pieters


From the official docs you linked

!= can also be written <>, but this is an obsolete usage kept for backwards compatibility only. New code should always use !=.

I believe the rationale for originally accepting <> was that it looked more natural for someone coming from a mathematical background than the common C-style != operator.

like image 7
chepner Avatar answered Oct 31 '22 13:10

chepner


I don't know what documentation you read, but I'm not aware of any that recommends <> over !=. PEP8, the main style guide, doesn't mention any such recommendation.

like image 4
Daniel Roseman Avatar answered Oct 31 '22 13:10

Daniel Roseman