¿Cómo verifico si dos variables hacen referencia al mismo objeto en Python?

X e Y son dos variables.
Puedo verificar si son iguales usando x == y , pero ¿cómo puedo verificar si tienen la misma identidad?

Ejemplo:

 x = [1, 2, 3] y = [1, 2, 3] 

Ahora x == y es verdadero porque x e y son iguales, sin embargo, x e y no son el mismo objeto.
Estoy buscando algo como sameObject(x, y) que en ese caso se supone que es Falso.

Se puede usar para verificar si dos objetos tienen la misma identidad.

 >>> x = [1, 2, 3] >>> y = [1, 2, 3] >>> x == y True >>> x is y False 

Para construir sobre la respuesta de Mark Byers:

La evaluación funcionará cuando las variables contengan objetos y no tipos primitivos.

 object_one = ['d'] object_two = ['d'] assert thing_one is thing_two # False primitive_one = 'd' primitive_two = 'd' assert primitive_one is primitive_two # True 

Si también necesita comparar primitivas, sugeriría usar la función id() incorporada.
De los documentos de Python :

Devuelve la “identidad” de un objeto. Este es un número entero que se garantiza que es único y constante para este objeto durante su vida útil.

Así que eso se convertirá en esto:

 assert id(primitive_one) == id(primitive_two) # False