【发布时间】:2021-12-17 12:00:20
【问题描述】:
为什么会这样:
x = str(input("Enter a string: ")) #input "cat"
y = str(input("Enter another string: ")) #input "cat"
print(x is y) #Outputs False
和这个不一样:
x = "cat"
y = "cat"
print(x is y) #Outputs True
【问题讨论】:
-
为什么你认为应该是一样的?这些结果中哪一个是出乎意料的?你了解
is运算符的作用吗? -
在第一个 sn-p 中,x 和 y 要求一个字符串。另一方面,它已经设置为相同的字符串。我不太明白当第二个返回 true 时第一个 sn-p 如何返回 false。
-
@ChristianSalinas 为什么?您了解
is运算符的作用吗?再说一次,你期待什么? -
从其中一个链接副本中查看this answer,我认为它非常详细地解决了所有问题