2d matriz de zeros

Não há nenhum tipo de array em python, mas para emular podemos usar listas. Eu quero ter 2d array-like estrutura preenchida com zeros. Minha pergunta é: qual é a diferença, se houver, nessas duas expressões:

zeros = [[0 for i in xrange(M)] for j in xrange(M)]

e

zeros = [[0]*M]*N

Vaizeros ser o mesmo? qual é melhor usar por meio de velocidade e legibilidade?

questionAnswers(3)

yourAnswerToTheQuestion