Python(或一般编程)。为何使用 <> 而不是 !=,是否有风险?
我觉得如果我理解得没错,a <> b
和 a != b
在功能上是完全一样的,在Python中 not a == b
也是如此。但是,使用 <>
是否有特别的理由呢?我知道对于刚接触Python的新手来说,一个常见的错误是认为 not a is b
和 a != b
或 not a == b
是一样的。
- 关于
<>
,是否也会出现类似的误解,还是说它在功能上完全一样? - 使用它会在内存、处理器等方面消耗更多资源吗?
3 个回答
0
你在Python中不应该使用<>
。
8
这里有个小小的说明:<>
这个符号其实有点名字不太准确。a <> b
可以理解为“a小于b或者a大于b”,但这样理解并不完全正确,因为并不是所有的排序都是完全的。例如,2.0 != float('nan')
这个判断是对的,但2.0 < float('nan') or 2.0 > float('nan')
这个判断就是错的。
而!=
这个符号就不会有这样的误解。
如果你想看看关于为什么在Python 3.x中去掉<>
这个符号的有趣讨论(还有点诗意!),可以看看这个链接:Requiem for an operator。
15
在Python 2中,<>
和!=
是完全一样的意思,都是用来表示“不等于”。其实没必要使用<>
,因为它没有什么好处,只是让代码看起来有点杂乱(这算是一种风格问题)。这个用法已经被不推荐使用,并且在Python 3中已经被去掉了。