Certaines statistiques montrent que Python est devenu le langage de programmation le plus populaire au monde. Alors, qu’est-ce qui donne à Python son attrait universel ? Nous examinons certaines des caractéristiques de ce langage polyvalent et puissant.
Python : c’est le numéro un
Python a 30 ans et est plus fort que jamais. Au moment de la rédaction de cet article, c’est le langage de programmation le plus utilisé au monde, ayant dépassé Java et C. C’est d’autant plus impressionnant que Python est présenté comme un langage de programmation à usage général. Ce n’est pas toujours un bon titre à avoir. Le vieil adage sur le fait d’être un touche-à-tout mais le maître d’aucun pourrait s’appliquer. Heureusement, avec Python, cela ne s’applique pas.
Python est utilisé dans le monde entier dans tout, du développement Web à l’intelligence artificielle, et du développement de jeux à l’analyse de données. Il est pré-installé sur la plupart des distributions Linux et est disponible pour tous les systèmes d’exploitation courants.
Python a été écrit par Guido van Rossum en tant que projet de loisir, à partir de décembre 1989. Il était pleinement fonctionnel le 20 février 1991 et a été rendu disponible en open source en 1992. Rossum a choisi le nom Python en raison de son appréciation d’une série de comédie télévisée de la BBC intitulée Le cirque volant de Monthy Python. Les créateurs de cette émission ont joué avec d’autres titres, notamment Temps d’étirement du hibou et Le moment d’élévation du crapaud. S’ils avaient choisi l’un d’entre eux, qui sait comment Python aurait pu s’appeler.
Python a été conçu dans un souci de simplicité. Rossum voulait que le code soit de type anglais et facile à lire, à écrire et à comprendre. La syntaxe est simple et accessible aux débutants, et les programmeurs chevronnés peuvent utiliser Python à partir d’autres langages sans aucune difficulté.
Cette simplicité sous-jacente ne signifie pas que vous ne pouvez pas résoudre des problèmes complexes avec Python. La beauté de Python est que vous pouvez exploiter toute sa puissance sous le capot en utilisant sa syntaxe simple et accessible. Cela rend Python parfaitement adapté au développement rapide d’applications.
exam_score = 40 course_work_score = 55 project_score = 40 if (course_work_score >= 40 and exam_score >= 60) or (project_score + exam_score >=70): print("You passed.") else: print("You failed.")
L’intention de ce code devrait être évidente pour n’importe qui. Notez l’utilisation de and
et or
pour représenter les opérateurs logiques. En revanche, C utilise &&
et ||
.
Interprètes et compilateurs
Python est un langage interprété. Vous écrivez le code source de votre programme dans des fichiers et l’interpréteur Python lit les fichiers et exécute les commandes que vous avez entrées. Les langages compilés tels que C nécessitent des étapes supplémentaires entre l’écriture du programme et l’exécution du programme.
Un logiciel appelé compilateur lit les fichiers du programme et génère un fichier binaire contenant les instructions de bas niveau que l’ordinateur comprend. En d’autres termes, il prend ce que vous avez écrit (le code source C) et en crée une copie qui a été traduite dans la langue maternelle de l’ordinateur. Avec un programme compilé, c’est la sortie du compilateur (le fichier binaire) qui est exécutée.
L’avantage d’un programme compilé est qu’il s’exécute plus rapidement qu’un programme interprété car le code n’a pas besoin d’être interprété à chaque exécution. Mais l’avantage des langages interprétés est l’absence d’étape de compilation. Et la compilation peut prendre beaucoup de temps. Avec Python, vous pouvez modifier quelques lignes de code et exécuter instantanément votre programme.
Python est le plus facile à utiliser dans un environnement de développement intégré (IDE), et il existe de nombreux IDE pour Python – Idle a été l’un des premiers. Idle vous permet de taper votre code, tapez Ctrl+S pour l’enregistrer, puis appuyez sur F5 pour l’exécuter. Votre programme s’exécute dans un shell Python. Vous pouvez taper n’importe quelle commande Python dans le shell et la faire exécuter immédiatement pour vous. Cela vous donne la boucle classique de lecture, d’évaluation, d’impression ou REPL, qui facilite le développement.
Ce petit programme définit une chaîne, additionne quelques nombres, puis imprime le total.
geek_string = "This is an ex-parrot" print("Total = ", 4 + 5 + 6)
Enregistrer le fichier et appuyer sur F5 exécute le programme. Il imprime le total et sort. Vous vous retrouvez à l’invite du shell Python. La chaîne n’est pas utilisée dans le programme, mais vous pouvez toujours vous y référer dans le shell en utilisant le print
commande sur la ligne de commande du shell.
Vérifier les valeurs des variables une fois votre programme terminé peut vous donner des informations précieuses sur ce qui se passait dans votre code.
Conception de langage unique de Python
Python est peut-être conçu pour faciliter la lecture et la vitesse d’apprentissage, mais il offre également une réelle puissance. Il prend entièrement en charge la programmation orientée objet (OOP). La POO vous permet de modéliser des éléments du monde réel et les relations entre eux en tant qu’objets dans vos programmes. Les classes définissent les caractéristiques des objets et peuvent contenir des fonctions que les objets de cette classe peuvent utiliser.
Vous pouvez considérer une classe comme une sorte de modèle et les objets sont créés à leur image. Les classes peuvent être dérivées de classes existantes et peuvent hériter des propriétés de la classe d’origine. Il y a beaucoup plus à faire avec la POO, mais il suffit de dire que c’est un moyen extrêmement puissant de modéliser des objets et des données au sein d’applications. De nombreux autres langages de programmation prennent en charge les principes de la POO, mais la syntaxe simplifiée de Python fait de son implémentation l’une des plus accessibles.
Python prend en charge tous les contrôles de flux d’exécution habituels tels que if
branches, while
et for
boucles, match
les instructions (similaires à switch dans d’autres langages) et les sections de code répétées peuvent être définies comme des fonctions.
Une bizarrerie de Python est que les espaces blancs sont significatifs. La plupart des autres langages ignorent complètement les espaces blancs dans votre code source. Python utilise l’indentation pour indiquer à quel bloc de code appartient le texte indenté. L’indentation remplace les accolades que la plupart des autres langues utilisent. La quantité prescrite d’indentation est de 4 espaces par onglet, mais tant qu’un retrait est d’un espace ou plus, Python déterminera à quel bloc appartient votre ligne de code.
price = 100 disposable_income = 95.5 no_deal = "You can't buy that item." if price > disposable_income: print("Too expensive!") print(no_deal)
L’exécution de ce programme donne cette sortie.
Les deux lignes du bloc en retrait sont imprimées car elles sont logiquement regroupées par leur retrait.
Vous avez peut-être remarqué que toutes les définitions de variables, appelées identifiants en Python — commencez par le nom de la variable, pas un indicateur de type tel que int
, char
, ou float
. Les variables en Python sont typé dynamiquement. Vous n’avez pas besoin de spécifier le type de données que la variable contiendra. Python le découvre au moment de l’exécution.
Vous n’avez pas non plus besoin de marquer la fin d’une ligne avec un point-virgule « ;
» ou tout autre caractère spécial. Cela donne à votre code une apparence plus naturelle et l’empêche d’avoir l’air encombré.
La bibliothèque standard et les autres bibliothèques
Programmer signifie obtenir un résultat final en disant à l’ordinateur ce qu’il doit faire – dans le vocabulaire du langage dans lequel vous programmez – afin qu’il produise le résultat final souhaité. En écrivant vos propres fonctions, vous pouvez étendre les capacités et le vocabulaire de la langue.
Un ensemble de fonctions utiles est appelé un une bibliothèque. Python est livré avec une bibliothèque standard. Il s’agit d’une très grande collection de fonctions regroupées en modules. Il fournit des modules pour des tâches telles que l’interaction avec le système d’exploitation, la lecture et l’écriture de fichiers CSV, la compression et la décompression ZIP, la cryptographie, le travail avec les dates et l’heure, et bien plus encore.
Pour utiliser une fonction, vous devez importer le module approprié.
import os print("CurrentDir:", os.getcwd())
Pour entrelacer avec le système d’exploitation, nous importons le os
module. Pour vérifier le répertoire de travail actuel, nous utilisons le getcwd()
fonction, qui est contenue dans le os
module.
Si nous sauvegardons ces deux lignes dans un fichier texte appelé « cwd.py », nous pouvons l’exécuter en appelant le Linux python3
interpréteur et en passant le nom du programme sur la ligne de commande.
python3 cwd.py
Il existe des milliers d’autres bibliothèques disponibles pour Python. Certains sont disponibles dans le commerce, mais la plupart sont de loin gratuits et open source.
Un langage de programmation et un langage de script
Lorsque vous écrivez un script shell sous Linux, la première ligne du script, appelée ligne shebang, indique quel interpréteur de commandes doit être utilisé pour exécuter ce script. Typiquement, ce sera bash
:
#!/bin/bash
Si vous ajoutez la ligne shebang suivante à votre programme Python et le rendez exécutable, le shell transmettra votre script à l’interpréteur Python.
#!/usr/bin/env python3
Cela signifie que vous pouvez écrire des scripts en Python comme vous le faites avec bash
commandes. Si nous ajoutons la ligne shebang à notre exemple précédent, nous obtenons :
#!/usr/bin/env python3 import os print("CurrentDir:", os.getcwd())
Enregistrons-le sous le nom « cwd-2.py » et utilisons chmod
pour le rendre exécutable :
chmod +x cwd-2.py
Maintenant, pour exécuter le script, nous pouvons l’appeler directement par son nom :
./cwd-2.py
En fait, Python peut être utilisé comme langage de script pour d’autres applications, et Python peut être intégré et utilisé pour ajouter des fonctionnalités internes aux programmes écrits dans d’autres langages.
Python est du moment
Il n’y a pas de tendances plus chaudes dans les mondes de l’informatique et de l’ingénierie des données que les mégadonnées, le cloud computing et l’apprentissage automatique. Et Python est au cœur de ces mouvements. Des bibliothèques existent qui facilitent la position de Python comme l’un des meilleurs outils de développement dans chacune de ces disciplines. On peut soutenir qu’il occupe la première place dans plusieurs d’entre eux.
Mieux encore, toutes ces bibliothèques open source sont disponibles pour le bricoleur à domicile. Envie de former un RaspberryPi à la reconnaissance faciale ? Téléchargez les bibliothèques appropriées – OpenCV, face_recognition et imutils par exemple – et c’est parti.
Interprété, non limité
Python peut être interprété, mais il s’exécute rapidement et s’adapte bien. Il est utilisé par les leaders de l’industrie, notamment Google, Facebook, Instagram, Netflix et Dropbox.
En conjonction avec un framework Web tel que Django, il a été utilisé pour créer certains des sites Web les plus visités et les plus fréquentés au monde, tels que YouTube, Instagram, Spotify et Dropbox.
Il existe de nombreuses ressources en ligne pour vous aider à apprendre Python, comme le didacticiel de W3Schools. Espérons que cet aperçu rapide de certaines des fonctionnalités intéressantes de Python vous donnera envie de les vérifier.
EN RELATION: Qu’est-ce que le cryptage et comment fonctionne-t-il ?