【发布时间】:2013-11-22 21:01:16
【问题描述】:
我正在编辑一些代码,以便一目了然,我想我应该将所有 char=="|" 更改为 char is "|"。我知道这看起来像是我把它弄得太笨了,但它看起来确实更好。无论如何,我决定最后一次pycheck,我收到了这个警告:
Warnings...
test.py:7: Using is |, may not always work
Processing module test (test.py)...
对于我的生活,我无法想象"|" is "|" 会返回False 的情况,除非你开始冒险使用多字节字符编码、CJK 字符等,如果我没记错的话。 还有其他我错过的情况吗?
【问题讨论】:
-
不要使用
is来检查是否相等。即使它在实现 X 中有效,也可能在实现 Y 中无效。 -
pycheck是否认为strings 是不可变的?char is "|"在我看来更好。 -
那个重复的标记是可取的。
标签: python string comparison