OK J'aime la fonction zip()
de Python. Utilisez-le tout le temps, c'est génial. De temps en temps, je veux faire le contraire de zip()
, pense "je savais comment faire ça", puis google python unzip, puis rappelez-vous que l'on utilise ce *
magique pour décompresser une liste compressée de tuples. Comme ceci:Pourquoi x, y = zip (* zip (a, b)) fonctionne-t-il en Python?
x = [1,2,3]
y = [4,5,6]
zipped = zip(x,y)
unzipped_x, unzipped_y = zip(*zipped)
unzipped_x
Out[30]: (1, 2, 3)
unzipped_y
Out[31]: (4, 5, 6)
Que diable se passe-t-il? Que fait cet astérisque magique? Où d'autre peut-il être appliqué et quelles autres choses géniales en Python sont si mystérieuses et difficiles à google?
double: http://stackoverflow.com/questions/2233204/how-does-zipitersn-work-in-python –
oh ouais. C'est exactement le problème, la recherche de stackoverflow pour 'zip (*' python ne retourne pas la question en double sur la première page, et googler pour 'python *' ou 'python zip (*' ne revient pas beaucoup parce que je suppose le '(*' est ignoré? Vous avez raison, quelqu'un d'autre a également pensé que c'était génial.Est-ce que je devrais supprimer la question? –
Je ne voudrais pas le supprimer, car il se classe plus haut dans la recherche pour une raison quelconque. –