[Python-es] Duda sobre listas de listas

Kiko kikocorreoso en gmail.com
Mie Mar 13 11:21:22 CET 2013


El 13 de marzo de 2013 11:10, Rafael Gomes <rggg88 en hotmail.com> escribió:

> Ok gracias entiendo, por casualidad me habia dado cuenta de eso de no
> aceder a los elementos sino a las listas a poco, iba a avisar ahora cuando
> recebi tu respuesta.
> Lo hice asi:
> l1=[[u'00:00:00:02:44:a9:b5:34', '1', u'00:00:00:1b:11:b4:16:80', '1'],
> [u'00:00:00:1b:11:b4:16:80', '1', u'00:00:00:02:44:a9:b5:34', '1']]
> l2=[]
>
> l=len(l1)-1
> c=len(l1[0])-1
>
> for i in range(l):
>         for j in range(c):
>                 if l1[i][j] not in l2:
>                         l2.append(l1[i][j])
> print l2
>
> Solo que tengo un problema/ duda.
> Mi l2 queda asi:
> [u'00:00:00:02:44:a9:b5:34', '1', u'00:00:00:1b:11:b4:16:80'] y yo queria
> que el uno se repetisiese despues del u'00:00:00:1b:11:b4:16:80' como en la
> lista original o sea que el l2 quedase asi:
> l2=[[u'00:00:00:02:44:a9:b5:34', '1', u'00:00:00:1b:11:b4:16:80', '1'].
> Solo que no se como puedo hacer esto de forma generica.
>

Depende de tu contexto, ¿ese '1', siempre es '1'? o ¿ese '1' puede ser
cualquier otra cosa que depende del elemento anterior de la lista? o ¿ese
'1' es independiente de cualquier otro elemento?,...

Define un poco mejor la pregunta y te podremos aportar una respuesta más
detallada a tu problema. Si ese '1' se repite siempre como muestras en tu
ejemplo una solución fea podría ser:

l1=[[u'00:00:00:02:44:a9:b5:34', '1', u'00:00:00:1b:11:b4:16:80', '1'],
[u'00:00:00:1b:11:b4:16:80', '1', u'00:00:00:02:44:a9:b5:34', '1']]

l2=[]


l=len(l1)-1

c=len(l1[0])-1


for i in range(l):

     for j in range(c):

         if l1[i][j] not in l2 and len(l1[i][j]) > 1:

             l2.append(l1[i][j])

             l2.append('1')

print l2
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20130313/5661cc29/attachment.html>


Más información sobre la lista de distribución Python-es