Mise à jour
Mise à jour de la base de données, veuillez patienter...
Site original : Sam & Max: Python, Django, Git et du cul
Une fonction très peu connue de Python est la possibilité de définir un paramètre en indiquant qu’il s’agit d’une séquence. Python va automatiquement appliquer l’unpacking dessus :
>>> def message_geolocalise((long, lat), message): print '%s' % message print 'Longitude : %s' % long print 'Latitude : %s' % lat ... >>> point = (4.344, 2.44) >>> message = "glittering prizes" >>> message_geolocalise(point, message) glittering prizes Longitude : 4.344 Latitude : 2.44
Cette fonctionnalité a été retirée en Python 3, jugée rarement utilisée, et surtout facilement remplaçable par un unpacking explicite :
>>> def message_geolocalise(coord, message): long, lat = coord print '%s' % message print 'Longitude : %s' % long print 'Latitude : %s' % lat
En effet, en Python on peut utiliser de l’unpacking imbriqué :
a, (b, c) = [1, [2, 3]]
Et cela a été abusé en le mélangeant la syntaxe des paramètres imbriqués, qui rend le truc franchement illisible.
Voilà, c’était le post “vous aviez un poney que vous ne saviez pas et maintenant que vous le savez vous l’avez plus”.