【发布时间】:2017-03-02 10:46:57
【问题描述】:
在交互式 python shell 中试试这个。
[] is [ ]
上面返回False,为什么?
【问题讨论】:
-
也许你应该解释一下为什么你认为它应该是真的?
-
[] is []也会失败:两者是不同的对象。is进行引用相等检查。 -
为什么会这样呢?您创建了两个空的可变对象,您不会希望它们是同一个对象。
-
@Giacomod'Antonio:但这很容易研究。 OP 没有分享他们的任何研究,也没有解释为什么他们认为这个表达是正确的。您假设他们将
is与==(值相等运算符)混淆了,但也许他们认为它会更有效?例如,对于两个空元组表达式,这将是真的:() is (),1 is 1也是如此。 -
@BillalBEGUERADJ:研究不力!= 题外话。我假设没有研究只是因为问题中没有任何其他显示。