¿por qué no puedo cambiar solo un elemento en una lista anidada en Python [duplicado]

Esta pregunta ya tiene una respuesta aquí:

Lista de cambios de listas reflejados inesperadamente en sublistas 12 respuestas

Acabo de encontrar algo realmente extraño de Python:

>>> out=[[0]*3]*3
>>> out
[[0, 0, 0], [0, 0, 0], [0, 0, 0]]
>>> out[0][1]
0
>>> out[0][1]=9
>>> out
[[0, 9, 0], [0, 9, 0], [0, 9, 0]]

bueno, obviamente, lo que quiero es:

[[0, 9, 0], [0, 0, 0], [0, 0, 0]]

no es extraño? No estoy muy familiarizado con Python, pero Python siempre me impresiona con su comportamiento intuitivo. ¿Pero cómo surge esto?
... y ¿cómo puedo obtener lo que necesito?

¡Gracias

Vati

Respuestas a la pregunta(2)

Su respuesta a la pregunta