Python not equal operator

2019-01-12 08:42发布

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.

4条回答
beautiful°
2楼-- · 2019-01-12 09:29

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.

查看更多
唯我独甜
3楼-- · 2019-01-12 09:37

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.

查看更多
劫难
4楼-- · 2019-01-12 09:38

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

查看更多
我欲成王,谁敢阻挡
5楼-- · 2019-01-12 09:40

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

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

查看更多
登录 后发表回答