我只是对python中的身份运算符,如何使用它以及身份运算符的工作方式感到困惑,我将举例说明:
var_1 = 10
print (id(var_1) is id(var_1))
结果是"错误" ,我不知道为什么会这样,有人可以用简单的方式解释一下?并解释id()函数的工作原理。
感谢' S
答案 0 :(得分:0)
您对id()
的使用是多余的,is
运算符会获取两个对象并比较它们的地址,当您执行id(var_1)
时,您正在创建一个具有值的无名变量id
var_1
然后您创建另一个无名变量,它将具有相同的值,但它不会相同id
您可以通过打印id(id(var_1)
和每次看到它都不同:
var_1 = 10
print id(id(var_1))
#18438008
print id(id(var_1))
#18438032
print id(id(var_1))
#18438056
如果您想查看对象是否相同,您需要执行id(var_1) == id(var_2)
或按照建议:var_1 is var_2