import this

Pythonique ?

Si vous vous intéressez au langage de programmation Python (Python Programming Language) ou si vous discutez avec des développeurs python, vous entendrais certainement dire que tel code ou tel autre est pythonique ou pas. Mais qu’est-ce que cela veut dire ?

Cela veux principalement dire que le code source utilise les mêmes principes de développement que python lui-même, qu’il utilise les constructions du langage au mieux et n’essaye pas de reproduire les structures d’un autre langage.

Cet état d’esprit est décrit dans Le zen de Python, détaillé au paragraphe suivant.

Cette question est aussi discutée en français ici : Zen et Pythonic : l’esprit de Python et en anglais là : What is Pythonic ?

Le zen de python

Préfère :
la beauté à la laideur,
l’explicite à l’implicite,
le simple au complexe
et le complexe au compliqué,
le déroulé à l’imbriqué,
l’aéré au compact.
Prends en compte la lisibilité.
Les cas particuliers ne le sont jamais assez pour violer les règles.
Mais, à la pureté, privilégie l’aspect pratique.
Ne passe pas les erreurs sous silence,
... ou bâillonne-les explicitement.
Face à l’ambiguïté, à deviner ne te laisse pas aller.
Sache qu’il ne devrait avoir qu’une et une seule façon de procéder,
même si, de prime abord, elle n’est pas évidente, à moins d’être Néerlandais.
Mieux vaut maintenant que jamais.
Cependant jamais est souvent mieux qu’immédiatement.
Si l’implémentation s’explique difficilement, c’est une mauvaise idée.
Si l’implémentation s’explique aisément, c’est peut-être une bonne idée.
Les espaces de nommage ! Sacrée bonne idée ! Faisons plus de trucs comme ça.

Vous venez de lire une version française du Zen of Python traduite par Cécile Trevian et Bob Cordeau, disponible en annexe du cours Introduction à Python 3, disponible à la page suivante : Ressources pédagogiques

L’original quant à lui est disponible dans la PEP 20, The Zen of Python mais aussi directement dans votre interpréteur python en tapant :

>>>import this

L’histoire de cet Easter’s Egg est décrite dans un très intéressant billet :
Pumpichank : import this and The Zen of Python

On en parle aussi par là : Import This : the Tenth International Python Conference

Pour continuer d’approfondir l’histoire de Python, il y a un blog en anglais : The History of Python

Sens de l’humour

Avec une notoriété grandissante, Python perd peu à peu son sens de l’humour.

#I don't like Spam!
def spam():
    print "Spam!"
      
while "You're no fun anymore":
    spam()

Il faut savoir, que le nom Python, choisi par le créateur du langage est un hommage aux Monthy Python. de fait, on trouve de nombreuses références dans le langage et dans la communauté :
 Les nombreuses utilisations des mots spam et eggs dans le tutoriel python.
 Initialement le PYthon Package Index, s’appelait le Cheese Shop en référence à un sketch
 De la même manière l’extrait de code au début de cette partie (FreeWear.org) :
 Etc. ...

Saviez-vous que le site officiel à une page humour ?
Python Humor

Pour finir quelque strip xkcd faisant référence à Python :
 xkcd : Python Ce module existe maintenant dans Python 3, The History of Python : import antigravity
 xkcd : Electric Skateboard (Double Comic) (Référence croisée à Calvin & Hobbes \o/)
 xkcd : New Pet

Python
import antigravity
xkcd : Python
 
A propos de INTRW

Journal web de Benoît LAURENT, entre photos, voyages et logiciels libres selon les périodes.

Fils de nouvelles RSS
Thèmes