Python ====== Introduction ------------ Python est un langage de programmation multi-paradigme. Il favorise la programmation impérative structurée et orientée objet. Il est doté d'un typage dynamique fort, d'une gestion automatique de la mémoire par ramasse-miettes et d'un système de gestion d'exceptions . Le langage Python est placé sous une licence de type BSD et fonctionne sur la plupart des plates-formes informatiques, des supercalculateurs aux ordinateurs centraux, de Windows à Unix en passant par Linux, Mac OS, ou encore Android, et aussi avec Java ou encore .NET. Il est conçu pour optimiser la productivité des programmeurs en offrant des outils de haut niveau et une syntaxe simple à utiliser. Il est également apprécié par les pédagogues qui y trouvent un langage où la syntaxe, clairement séparée des mécanismes de bas niveau, permet une initiation plus aisée aux concepts de base de la programmation2. Différentes implementations : cpyton, jython, ironpython, pypy Utilisé par ----------- - Instagram - Pinterest - Disqus(500 millions pages/mois) - Mozilla - Justin.tv - NASA - National Geographic - Canonical - Bitbucket.org - Discovery Networks - Intel, AMD, HP, IBM - The Library of Congress (plus grande bibliothèque du monde) - The New York Times - Rdio - VMWare - Walt Disney - The Washington Post. - lanyrd.com Historique ---------- Créé en 1989 par GVR 7-8e langage de prog selon l’index Tiobe, 4e sur github Points forts ------------ - Langage objet, mais prog impérative - Cross platform - Peu verbeux : (spring 55k -> python/django 8k), expressif - Très lisible, syntaxe simple - Consistent - Lib standard très riche (http, crypto, fichiers, math, test etc) - Très bonne qualité générale des libs tierces : notamment web, science - Moins rapide que du c/java, en pratique c’est rarement un problème. - Plus rapidement productif - Dépôt (Pypi) - Pas de compilation : Langage transformé en bytecode (fichiers .pyc, .pyo) Aujourd’hui ----------- Dernière version: 3.9 Les versions 2.X sont abandonnées, mais encore très présentes en entreprises. Indentation ----------- Indentation significative. .. code-block:: python if variable == 10: print ('dix') **Configurer votre éditeur pour toujours utiliser 4 espaces** L’interpréteur -------------- REPL: Read evaluate print loop Démarrer l ’interpréteur ``$>python`` Hello world  ~~~~~~~~~~~~ :: >>> print ('hello world') hello world Messages d'erreurs ^^^^^^^^^^^^^^^^^^ :: >>> print 'hello File "", line 1 print ('hello) ^ SyntaxError: EOL while scanning string literal Calculatrice ~~~~~~~~~~~~ .. code-block::python >>> 12 + 6 18 >>> 2 ** 8 256 >>> 3/2 1.5 **Attention (python 2.x)** :: >>> 3/2 1 >>> 3.0/2 1.5 Astuce ^^^^^^ Underscore pour rejouer la dernière commande :: >>> print ('toto') toto >>> _ toto Terminaux améliorés ------------------- bpython ~~~~~~~ Syntax highlighting, autocomplete, parameter list, autoindent, rewind `Page officielle `_ iPython ~~~~~~~ Notepad, console, web `Page officielle `_ Licence: CC-BY Providenz