Maison > développement back-end > Tutoriel Python > Comment les annotations de variables améliorent-elles le système de types de Python ?

Comment les annotations de variables améliorent-elles le système de types de Python ?

Barbara Streisand
Libérer: 2024-12-06 11:00:14
original
881 Les gens l'ont consulté

How Do Variable Annotations Enhance Python's Type System?

Annotations variables : amélioration du système de types de Python

Les annotations variables ont été introduites dans Python 3.6, suite à l'implémentation d'indices de type avec PEP 484. Alors que les indices de type faisaient simplement allusion au type attendu d'une variable, les annotations poussent le concept plus loin en vous permettant de spécifier directement un type de variable.

Syntaxe et fonctionnalités

La nouvelle syntaxe d'annotation permet à la fois des annotations autonomes et des annotations lors des affectations :

# Standalone annotation
number: int

# Annotation during assignment
primes: List[int] = []
Copier après la connexion

La syntaxe annotated_assignment_stmt couvre cette nouvelle syntaxe, en introduisant le caractère ":" comme délimiteur.

De plus, Python 3.6 introduit l'attribut annotations pour les modules et les classes. Cet attribut contient les annotations de type pour les variables définies.

Accès aux annotations

Pour accéder aux annotations, vous pouvez utiliser la fonction get_type_hints du module de saisie. Par exemple :

>>> from typing import get_type_hints
>>> primes: List[int] = []
>>> captain: str
>>> get_type_hints(__main__)
{'primes': typing.List[int]}
Copier après la connexion

Exemple

Considérez l'exemple fourni dans la question :

primes: List[int] = []
Copier après la connexion

Cette annotation indique que la variable primes est une liste d'entiers. Toute affectation à cette variable doit adhérer à ce type.

Variables de classe et StarShip

La variable Stats de la classe StarShip est une variable d'instance, pas une variable de classe. ClassVar est un type spécial qui désigne les variables de classe. Actuellement, Starship.stats est une variable d'instance de type Dict[str, int].

Usage

Les annotations de variable sont facultatives et principalement destinées à être utilisées par type- outils de vérification. Ils fournissent un moyen simple et structuré de spécifier les métadonnées de type, améliorant la lisibilité du code et facilitant le développement d'outils et de bibliothèques personnalisés liés aux types.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal