2017-07-25 1 views
0

J'EXTRACTION un dictionnaire qui me donne cette sortie:Déballer une liste de listes

mylist= [[u'Ann', u'jOhn', u'Clive'], [u'124street', u'32B', u'16eve', u'beach']] 

Lorsque je tente de séparer en deux, je reçois un ValueError:

nest1, nest2 = zip(*mylist) 

ValueError: too many values to unpack 

En fin de compte j'ai besoin quelque chose comme ceci:

nest1=['Ann', 'jOhn', 'Clive'] 
nest2=['124Street', '32B', '16eve', 'beach] 

J'ai trouvé zip(*mylist) dans les this answer.

+6

Pourquoi ne pas simplement 'nest1, nest2 = mylist'? – khelwood

+0

@khelwood il a travaillé beaucoup merci –

Répondre

4

*zip est destiné à être utilisé pour déballer des listes de tuples. Dans votre cas, il n'y a pas déballer nécessaire à faire, si juste déballer la liste elle-même:

In [473]: x, y = [[u'Ann', u'jOhn', u'Clive'], [u'124street', u'32B', u'16eve', u'beach']] 

In [474]: x 
Out[474]: ['Ann', 'jOhn', 'Clive'] 

In [475]: y 
Out[475]: ['124street', '32B', '16eve', 'beach'] 
0

Essayez cette

mylist= [[u'Ann', u'jOhn', u'Clive'], [u'124street', u'32B', u'16eve', u'beach']] 
nest1 = mylist[0] 
nest2 = mylist[1] 
print("nest1={}".format(nest1)) 
print("nest2={}".format(nest2)) 

Sorties:

nest1=['Ann', 'jOhn', 'Clive'] 
nest2=['124street', '32B', '16eve', 'beach']