Les 6 principales fonctionnalités utiles de Python 3.10

Les 6 principales fonctionnalités utiles de Python 3.10

Python 3.10 se vante d'être l'une des versions les plus stables disponibles pour les utilisateurs à télécharger, et sera publié plus tard cette année. La nouvelle version apportera de nombreux changements notables, tels que des fonctionnalités faciles à utiliser pour les programmeurs novices et expérimentés.





Les améliorations flagrantes de la nouvelle version Python incluent l'introduction d'une correspondance de modèle structurel, de meilleurs messages d'erreur, de nouveaux opérateurs d'union, des numéros de ligne précis pour le débogage, et bien plus encore.





Voici ce que vous devez savoir sur Python 3.10 :





Correspondance de modèle structurel dans Python 3.10

La correspondance de motifs structurels facilite l'écriture de code et continue d'être l'un des points forts de la dernière version de Python. Python vise à améliorer les déclarations de correspondance préexistantes présentes dans les versions précédentes du langage de programmation. Il a fait une mise à jour des déclarations de cas de correspondance existantes dans Python.

Jetons un coup d'œil rapide aux implémentations de Structural Pattern Matching :



L'instruction match-case fait partie du langage Python depuis un certain temps maintenant. Cette déclaration est essentiellement utilisée pour éviter le travail fastidieux de rédaction du sinon déclaration plusieurs fois.

Vous pouvez comparer avec des objets ayant des propriétés similaires à l'aide de cette fonctionnalité dans la nouvelle version.





match media_object:case Image(type='jpg'):# Return as-isreturn media_objectcase Image(type='png') | Image(type='gif'):return render_as(media_object, 'jpg')case Video():raise ValueError('Can't extract frames from video yet')case other_type:raise Exception(f'Media type {media_object} can't be handled yet')

La nouvelle bibliothèque python reconnaît les objets tels que jpg, gif et vidéos. Ce code peut s'exécuter de manière transparente sans générer d'erreur.

2. Messages d'erreur améliorés

Chaque codeur comprend probablement l'importance des erreurs lors de l'écriture de code et à quel point certains types d'erreurs peuvent être exaspérants. Les versions précédentes de Python lançaient des messages d'erreur dès qu'il y avait des problèmes de syntaxe. Ceux-ci peuvent être dus à une mauvaise syntaxe, des mots-clés manquants, des mots-clés incorrects ou mal orthographiés, entre autres problèmes.





Ces messages d'erreur étaient loin d'être parfaits car il devenait difficile pour les débutants (parfois, même les utilisateurs avancés) d'identifier la véritable cause de l'erreur dans leurs codes. En tant que programmeur, Google continue d'être votre allié pour déchiffrer la raison des différents messages d'erreur.

comment réparer l'utilisation de 100 disques

Par exemple, de nombreuses personnes peuvent ne pas savoir pourquoi Python renvoie l'erreur suivante :

SyntaxError: unexpected EOF while parsing error message.

Le manque de clarté de ces déclarations a incité la dernière version de Python à améliorer son ensemble existant de messages d'erreur.

Les anciens messages ont été remplacés par des messages d'erreur faciles à comprendre tels que :

{ n'a jamais été fermé EOF inattendu lors de l'analyse

Parmi les autres changements, citons :

Erreurs d'attribut telles que :

from collections import namedtoplo

le module 'collections' n'a pas d'attribut 'namedtoplo'. Vouliez-vous dire : tuple nommé ?

Les messages NameError sont modifiés pour ressembler à :

new_var = 5print(new_vr)>

NameError : le nom 'new_vr' n'est pas défini. Vouliez-vous dire : new_var ?

3. Gestionnaires de contexte entre parenthèses

Les nouveaux gestionnaires de contexte entre parenthèses peuvent rendre votre code plus élégant. Même si ce n'est pas une fonctionnalité majeure, cela peut facilement rendre votre code moins maladroit. Cette fonctionnalité est avantageuse si vous travaillez en équipe et que votre code doit être structuré.

Imaginez que vous écriviez une déclaration comme :

with open('file1.txt', 'r') as fin, open('file2.txt', 'w') as fout:fout.write(fin.read())

Le code ci-dessus fonctionne, mais la première ligne est beaucoup trop longue et semble maladroite. Vous pouvez couper la ligne en utilisant une barre oblique inverse ( ) et rendre le code structuré :

with open('file1.txt', 'r') as fin, open('file2.txt', 'w') as fout: fout.write(fin.read())

Avec l'introduction du nouveau gestionnaire de contexte entre parenthèses, vous pouvez également rompre la ligne en utilisant des parenthèses :

with (open('file1.txt', 'r') as fin,open('file2.txt', 'w') as fout):fout.write(fin.read())

En rapport: Idées de projets Python adaptées aux débutants

4. Nouveau type d'opérateur de l'Union

Une fonctionnalité petite mais pratique de Python 3.10 est le nouveau type d'opérateur d'union. Chaque version de Python est livrée avec un ensemble prédéfini de fonctionnalités d'indice de type.

comment prendre des photos de portrait iphone 7

L'opérateur union inclut une logique conditionnelle ; par exemple, entier ou flotter peut être écrit comme Union [X, Y] . Le nouvel opérateur d'union peut être exprimé comme int|float aussi.

L'introduction d'un nouvel opérande union dans Python 3.10 permet de gagner du temps et donne au code une apparence bien définie.

Par exemple:

def f(x: int | float) -> float: return x * 3.142f(1) # passf(1.5) # passf('str') # linter will show annotation error

5. Numéros de ligne précis pour le débogage

Vous avez peut-être remarqué à plusieurs reprises que le suivi des erreurs ne vous redirige pas vers la ligne correcte où une erreur s'est produite. Cela rend le débogage difficile pour les codeurs qui viennent de commencer à écrire du code.

Le traçage des erreurs défectueux est particulièrement évident lors de l'écriture sys.settrace et les outils associés en Python. La nouvelle version améliore considérablement cela et vous pouvez voir des numéros de ligne précis lorsqu'une erreur se produit.

Pour apporter un numéro de ligne plus précis, Python 3.10 décale sa fiabilité par rapport à l'actuel co_Inotab attribut et utilise la nouvelle méthode co_lignes () attribut. Cet attribut fonctionne de manière à ce que le f_lineo contient toujours le numéro de ligne exact.

1. for (2. x) in [1]:3. pass4. return

Connexe : Déboguez votre code Python

6. Évaluation reportée des annotations

Dans Python, l'évaluation de l'annotation de type est effectuée au moment de la définition de la fonction. Cela signifie que les annotations de type sont évaluées ligne par ligne de manière descendante.

Même si cela peut sembler être la meilleure option, cette approche pose toujours deux problèmes :

  • Les conseils de type font référence à des types qui ne sont pas encore définis et qui ne fonctionnent pas ; ces conseils doivent être exprimés sous forme de chaînes.
  • Les importations de module ont ralenti car les conseils de type sont exécutés en temps réel.

Pour éviter les problèmes d'exécution, les annotations sont stockées dans _annotations_ et l'évaluation est effectuée ensemble. Cela permet un référencement avancé lorsque les importations de modules sont exécutées en premier, réduisant ainsi le temps d'initialisation.

Travailler avec les dernières fonctionnalités de Python 3.10

La dernière version de Python sortira le 4 octobre 2021 ; il promet de corriger les bugs qui sont présents dans les versions existantes. Les versions qui suivent amélioreront la version 3.10 actuelle.

Le mappage de modèle structurel est le point culminant de cette nouvelle mise à jour, et il simplifie l'écriture de codes pour des objets similaires. D'autres fonctionnalités telles que les gestionnaires de contexte entre parenthèses et les opérateurs d'union de nouveau type visent à rendre le code plus simple et efficace.

Néanmoins, il existe d'excellentes techniques de gestion des exceptions dans les versions Python existantes. Vous pouvez faire bon usage des fonctionnalités de Python.

Partager Partager Tweeter E-mail Comment gérer les exceptions en Python

Couvrez vos bases de codage avec des exceptions Python.

Lire la suite
Rubriques connexes
  • La programmation
  • La programmation
  • Python
  • Conseils de codage
A propos de l'auteur Wini Bhalla(41 articles publiés)

Wini est un écrivain basé à Delhi, ayant 2 ans d'expérience dans l'écriture. Au cours de ses périodes d'écriture, elle a été associée à des agences de marketing numérique et à des cabinets techniques. Elle a écrit du contenu lié aux langages de programmation, à la technologie cloud, à AWS, à l'apprentissage automatique et bien plus encore. Dans son temps libre, elle aime peindre, passer du temps avec sa famille et voyager à la montagne, dans la mesure du possible.

Plus de Wini Bhalla

Abonnez-vous à notre newsletter

Rejoignez notre newsletter pour des conseils techniques, des critiques, des ebooks gratuits et des offres exclusives !

Cliquez ici pour vous abonner