我在玩Python is
和==
操作符。据我所知,is操作符检查两个对象是否具有相同的id,但在我的例子中,操作符返回False,即使两个子字符串具有相同的id
代码如下:
#! /usr/bin/python3
# coding=utf-8
string = "HelloWorld"
print(id(string)) #140131089280176
print(id(string[0:5])) #140131089251048
print(id(string[-10:-5])) #140131089251048
print(string[0:5] == string[-10:-5]) #True
print(string[0:5] is string[-10:-5]) #False
子字符串与原始字符串的id不尽相同,但为什么is operator返回false和两个具有相同id的子字符串?你知道吗
对我来说:
具有不同的ID,因此,这些答案:
正如他们所期望的那样。你知道吗
你确定你没有犯错误吗?你知道吗
#我会把它作为评论发表,但现在还不能
相关问题 更多 >
编程相关推荐