Comme tout développeur python, une fois qu'on y a gouté, on ne peut plus s'en passé, et on devient un "évangélisateur python". Cette page est ma modeste contribution à cette évangélisation. C'est, en qqsorte, la page sur laquelle j'aurai voulu tomber au début de mes pythonesqueries. J'aurai gagné bien du temps ;-). Alors, en esperant qu'elle puisse servir pour d'autres : voilà les principales urls du monde python :
Le python est langage mature (il est bien plus vieux que le java) ! C'est un language interprété de haut niveau orienté objet. Il a été conçu par Guido van rossum ! Mais vous en apprendrez plus en lisant ceci !
Il est simple à appréhender, tout en étant très puissant (même eric le dit). Les meilleurs liens pour l'apprendre sont : DiveIntoPython (en vf) pour bien assimiler les concepts que propose python, et "a byte of python" pour une démarche un peu plus classique (ce PDF librement téléchargeable, est aussi assez interessante, tout comme ce wiki francophone). Pour ceux qui veulent apprendre à programmer. Ce mémo, et surtout celui-ci, peuvent également bien servir, une fois le langage maîtrisé ! (sinon il y a plein de bouquins ici)
Le python est un langage multi-plateformes, il tourne même sur les bons vieux commodore64. De plus, python s'intègre parfaitement avec java, on peut fabriquer des class java, ou même des applets web, avec jython (si vous venez du monde java, ce wiki vous aidera)... Tout comme on peut faire de même en dot.net/mono assemblies / exe) avec ironpython (et ça marche très bien). Donc, quoi qu'il arrive, avec python, vous serez toujours "dans le vent". (Il y a même des compilateurs prometteurs de python en c++ : Shed-Skin et Surukuku.)
Mais ce qui fait sa principale force, à mon sens, c'est le nombre de librairie qu'il y a autours ; et permette au langage de faire un peu près tout, et très simplement. Pour avoir une petite idée, ce site (python-eggs) est une merveille pour avoir une vue quasi globale ! (d'autres liens interessants)
qques packages, qui m'ont bluffé totalement (et qui m'ont donné envi d'apprendre ce langage) :
- wxpython : un GUI multi-plateforme, qui prends le look de l'os hote. Bien plus interessant que le "tkinter" livré en standard avec python. Pour s'en rendre compte, il suffit de lancer la demo wxpython : c'est plus que bluffant ! Il n'y a rien de plus simple que PythonCard pour créer de petites interfaces wx. (plus d'infos sur les gui)
- PIL : une blibliothèque pour manipuler tous les formats d'images
- pygame : une librairie pour faire des jeux, très interessante à programmer ! (bindings sur la sdl)
- soya3D : une biblio, de haut niveau, pour piloter un moteur 3D
- twistedpython : pour faire du reseau à fond.
- pywin32 (win32all) : pour faire tout et n'importe quoi sous windows.
- mod_python : pour une intégration absolue avec apache. Les frameworks de développement web en python sont très nombreux. Le plus pythonique, et le plus attachant est certainemeny CherryPy (faire un site web est aussi simple que de faire un programme python) ! web.py est également à voir !!
- lxml : les bindings python et pythonic sur les librairies les plus rapide pour manipuler du xml/xsl dans tous les sens. (bien plus rapide qu'une msxml4).
- pygtk et tepache : sont parfaits pour développer du GTK, en RAD ;-). (un tuto en français)
- ...
Python a également une communauté très active ... Les sites à suivre sont daily python url (une mine d'or), the vault, et bien evidemment le pypi ! La communauté del.icio.us de python est également une superbe mine d'or de liens interessants! Les weblogs pythonesque sont également interessants.
Quand on a des "problèmes", ces faq sont interessantes : la faq officiel et celle-ci. Sinon les newsgroups comp.lang.python et fr.comp.lang.python(dans une moindre mesure) sont vraiment très réactifs ! La communauté francophone se trouve sur l'afpy.
Pour programmer du python, sous windows, j'aurai tendance à conseiller le freeware pspad, très simple et puissant. Mais SciTE, une fois bien configuré, est une merveille, tout en étant GPL et multi-plateformes (sinon, il y a aussi Eclipse et pydev).
Pour vérifier la consistance de ses programmes python, un pychecker est extrement interessant !
Pour distribuer ses librairies facilement le format EGG semble être le futur, un petit tuto [fr] !
Et pour livrer un "exe", (un package ne necessitant pas l'installation de python), le célèbre py2exe est très puissant, un peu complexe, et uniquement pour windows. J'aurai tendance, maintenant, à conseiller cx_freeze, qui est ultra simple, et multi-plateforme ... Pyinstaller (ancien mc millian ) est proche de la perfection, tout en étant multi-plateforme également. Jungle est un peu différent, uniquement dispo sous windows, mais très efficace.
Enfin, il faut savoir que python est très utilisé, des boites comme google, la nasa utilisent python au quotidien (le site de référence pour suivre sa pénétration : pythonology !)
Tous ces liens sont à bookmarker ... Personnellement, j'en ai bien bien plus ... Mais j'ai essayé de rester simple, et d'aller à l'essentiel ... pour ne pas gaver le potentiel lecteur ;-)