Cuadrado de todos los elementos en una lista

Me dicen que

Escribe una función, el cuadrado (a), que toma una matriz, a, de números y devuelve una matriz que contiene cada uno de los valores de un cuadrado.

Al principio, tuve

def square(a):
    for i in a: print i**2

Pero esto no funciona ya que estoy imprimiendo, y no volveré como me pidieron. Así que lo intenté

    def square(a):
        for i in a: return i**2

Pero esto solo cuadra el último número de mi matriz. ¿Cómo puedo hacer que se ajuste a toda la lista?

Respuestas a la pregunta(8)

Su respuesta a la pregunta