Instagram a récemment célébré son passage de Python 2 à Python 3. Pourtant, de nombreuses entreprises célèbres utilisent toujours Python 2.
Pourquoi ? Un seul mot : compatibilité.
Python 3 n’est pas « rétrocompatible », ce qui signifie que si votre entreprise utilise diverses bibliothèques Python 2, elles risquent de ne plus fonctionner après la mise à niveau.
Les entreprises qui exécutent du code sur Python 2 doivent faire un choix difficile : soit elles doivent trouver une bibliothèque de remplacement qui fonctionne avec Python 3, soit elles sont coincées avec Python 2. Dropbox a écrit un rapport détaillé sur le processus qui leur a pris TROIS ANS pour effectuer la mise à niveau.
L’adoption de Python 3 a longtemps été un sujet de débat dans la communauté Python. C’est encore un peu vrai, bien qu’elle ait maintenant atteint un soutien généralisé, avec certains projets très populaires comme Django abandonnant entièrement le support de Python 2.
Vous avez bien lu, il a fallu trois ans à Dropbox pour effectuer une mise à niveau complète de Python 2 à Python 3 – et pour l’amour du ciel, Guido Van Rossum (l’inventeur de Python) travaille chez Dropbox !
Python 3 a plus de 10 ans ! Pourtant, de nombreuses entreprises utilisent encore Python 2. Alors quelle version du langage devez-vous apprendre ? Dans ce post, je vais décomposer les différences entre Python 2 et Python 3. Si vous ne voulez pas lire le post mon conseil :
Pourquoi Python est-il si populaire ?
- Intuitivité. La syntaxe (ou « grammaire » de Python, pour ainsi dire) est facile à comprendre.
- Maturité. Python est un langage éprouvé doté de puissantes capacités vous permettant de coder à peu près tout ce dont vous pouvez rêver.
- Demande. Les développeurs Python sont régulièrement embauchés par une foule d’entreprises à travers le monde.
- Favorable à distance. Les ninjas du codage comme les étudiants en codage ont simplement besoin d’une connexion Internet pour atteindre leurs objectifs.
- Python est le nouvel Excel. La raison pour laquelle Python est enseigné dans les écoles de commerce est que Python est comme Excel sur des stéroïdes. Avec Python, les analystes financiers, les PDG et les spécialistes du marketing axés sur les données peuvent tirer parti de la puissance de Python pour croquer les grosses données.
Pourquoi y a-t-il deux versions de Python ?
Le changement se prépare depuis un certain temps au pays de Python, cependant. La Python Software Foundation, une organisation indépendante à but non lucratif qui détient les droits d’auteur sur le logiciel, a publié la version 2.7 en 2010, tout en mettant à jour la base de code vers diverses itérations de 3.x simultanément. Au fil des années, des entreprises et des projets ont commencé à migrer vers Python 3 en raison de ses divers avantages.
Pourquoi choisir Python 2?
L’une des plus grandes raisons de s’en tenir à Python 2 est si vous souhaitez travailler avec une grande base de code qui a été écrite en Python 2. Déplacer une grande application écrite dans une ancienne version d’un langage, ou la réécrire carrément dans un autre langage, peut être une entreprise massive.
Une autre raison de rester au pays de Python 2 est si votre code dépend d’une extension spécifique écrite à l’origine pour Python 2 qui n’a pas été mise à jour. La plupart d’entre elles l’ont été, mais pas toutes. C’est à vous de décider si cela vaut la peine de continuer à travailler avec des extensions plus anciennes (également appelées « packages »).
Pourquoi choisir Python 3?
Pour le dire crûment, Python 2 est l’héritage, Python 3 est l’avenir. Si vous commencez à apprendre à coder – apprenez Python 3. Voici quelques raisons supplémentaires pour lesquelles vous devriez apprendre Python 3:
- Code hérité. Après 2020, Python 2 ne sera plus maintenu.
- Apprendre les meilleures pratiques. Python 3 comprend des mises à niveau qui ne sont pas disponibles dans Python 2.
- Écrire un code plus propre. Python 3 a élégamment modifié sa structure pour qu’il faille moins de lignes de code pour effectuer une action.
- Éviter les confusions syntaxiques. Quelques petites différences grammaticales existent entre les deux versions, ce qui peut frustrer les débutants.
Quelles sont les différences entre Python 2 et Python 3 ?
L’une des premières lignes de code Python que vous écrirez en tant que débutant sera d’indiquer à l’ordinateur d’utiliser la fonction print pour renvoyer la phrase » Hello world ! »
Python 2:
Print "Hello world!”
Python 3:
print("Hello world!”)
Résultat : L’ordinateur renvoie la même chose, mais vous constaterez peut-être que le code imbriqué entre parenthèses est beaucoup plus souvent utilisé en Python 3. Il y a également des raisons programmatiques à cela : Python 3 est beaucoup plus facile à lire.
Hello world!
Si cela vous semble être beaucoup de parenthèses à suivre, n’ayez crainte ! Au début de votre apprentissage, vous installerez un éditeur de texte spécialement conçu pour mettre en évidence les parenthèses manquantes et d’autres erreurs de syntaxe – et même remplir automatiquement de nombreuses choses courantes pour vous.
Variables Python
Un deuxième exemple impliquant une utilisation plus étendue des parenthèses consiste à remplacer une ligne retournée de texte préparé par différentes variables. Cela fait partie de l’opération qui se déroule lorsque vous vous inscrivez à une lettre d’information électronique et qu’ils vous l’adressent comme par magie avec votre nom réel.
Python 2:
User20987 = "Chris Castiglione”print "Hi, %, hope you’re having a great day today!” % (User20987)
Python 3:
User20987 = "Chris Castiglione”print("Hi {0}, hope you’re having a great day today!”).format(User20987))
Fonctions Python
Une autre différence syntaxique majeure est la façon dont la fonction raw_input() a changé. Il s’agit d’une fonction extrêmement courante qui prend des informations à partir de divers champs sur un site Web (comme lorsque vous vous inscrivez pour un nouveau compte et que vous tapez votre adresse e-mail).
Python 2 :
Field_1 = raw_input("entered_value”)
Python 3:
Field_1 = input("entered_value”)
Cela compte plus qu’il n’y paraît, car cela a également un effet sur la façon dont l’ordinateur interprète le code. Python 2 va automatiquement » évaluer » l’entrée, ce qui peut avoir des conséquences inattendues si l’utilisateur ne saisit pas le type de données que le programmeur attend.
Supposons que dans l’exemple ci-dessus, le programmeur Python 2 s’attendait à ce que l’utilisateur saisisse un nombre entier, mais qu’au lieu de cela, l’utilisateur a fait une faute de frappe et a saisi l’opération mathématique « 7-2 ». Cette ligne de code renverrait le nombre 5, ce qui ne serait pas le résultat souhaité.
La version Python 3 n’évaluera pas l’entrée par défaut. Au lieu de faire des maths, elle retournera une forme de données appelée « chaîne », qui dans ce cas serait une copie de ce que l’utilisateur a entré : « 7-2 ». Cette approche vous permet de définir plus précisément le type de données que vous recevez de l’utilisateur.
Pourquoi je recommande d’apprendre Python 3 :
Les performances de Python 2 vs 3 en termes de vitesse de calcul ont été considérablement améliorées, mais Python 3 améliore également les capacités déjà vastes de Python 2.
Voici quelques nouvelles choses sympas que vous apprendrez en commençant :
- Une saisie utilisateur plus facile. Une première leçon commune consiste à prendre les données saisies par un utilisateur (l’exemple de syntaxe d’entrée utilisé ci-dessus, par exemple) et à les transmettre à un script simple pour créer une liste d’informations. Python 3 améliore ce processus.
- Amélioration de la gestion des nombres. Python 3 comprend certaines améliorations en matière de calcul mathématique qui sont essentielles pour de nombreuses applications.
- Les modules complémentaires populaires sont pris en charge. Vous apprendrez également le concept des extensions appelées « modules » et « packages » qui ne sont pas incluses dans l’installation par défaut de Python 3. Au fur et à mesure de votre progression, l’installation et l’utilisation de ces derniers feront partie de votre répertoire quotidien. Presque tous les paquets les plus populaires sont prêts pour Python 3 depuis des années.
- Prise en charge de l’Unicode. Saviez-vous que les emojis sont des caractères Unicode ? Pas d’emojis dans Python 2 ! 😉 😎 😃
- Et ce n’est pas tout ! Voici six choses à savoir avant d’apprendre Python.
Comment obtenir Python 3 sur mon ordinateur?
De nombreux ordinateurs flambant neufs sont encore livrés avec Python 2.7 préinstallé par défaut, mais cela vaut la peine d’apprendre comment installer et utiliser Python 3 sur votre machine personnelle.
Le cours d’introduction à Python d’un mois vous guidera dans l’installation de Python 3 sur votre machine personnelle, car le processus pour le faire varie selon les systèmes d’exploitation.