[Python-es] Matrices
José Alejandro Pérez Rubio
perezj en si.uji.es
Vie Jun 14 12:40:14 CEST 2002
Buenos dias, he visto en los ultimos dias una preguntas acerca de como
construir una matriz:
> > Mi problema es que no sé como generar esa matriz. Mi idea es algo
asi:
> > lista=[]
> > for row in range(0,12):
> > for cell in range(0,34):
> > lista[row].append(cell)
> >
> >>> lista=[]
> >>> for i in range(0,12):
>
> ... fila = []
> ... for cell in range(0,34):
> ... fila.append(cell)
> ... lista.append(fila)
Y la respuesta de Chema Cortes :
Una forma más concisa sería:
lista=[[0]*34]*12
No son equivalentes, si ejecutamos
lista=[[0]*10]*3
lista[0][0] = 1
print lista
Ya podemos ver porque no son equivalentes. lista contiene 3 referencias
a una unica lista de 10 elemntos. Quiza sea mas aproximado:
lista=map( lambda x : range(0,10), range(0,3) )
Un saludo
Más información sobre la lista de distribución Python-es