【发布时间】:2021-09-25 00:50:34
【问题描述】:
我想知道为什么以下测试返回 False: 假设我有 2 个简单的字符串:
str0 = "trade"
str1 = "`trade"
我不明白为什么 python 中的以下测试返回 False:
str1.replace("`", "") is str0
还有,
"".join(list(str1)[1:]) is str0 => False
感谢您的教育!
【问题讨论】:
-
is和==不一样 stackoverflow.com/questions/132988/… -
这是由于解释器的优化。始终使用
==来比较值! -
几乎总是使用
==来比较值。None、True和False都是具有单一身份的单例。
标签: python string str-replace string-comparison