Spécification du type de fonction dans les indices de type
En Python, les indices de type sont utilisés pour fournir des métadonnées facultatives sur les types attendus de variables et de paramètres de fonction . Cependant, spécifier l'indice de type d'une variable comme type de fonction peut sembler flou.
La solution
Malgré l'absence de "typing.Function" dans le PEP 483, vous pouvez spécifier l'indice de type d'une variable en tant que type de fonction en utilisant "typing.Callable".
Implémentation
La syntaxe pour spécifier un type de fonction en utilisant "typing.Callable" est le suivant :
from typing import Callable def my_function(func: Callable):
Remarque : Callable seul équivaut à "Callable[..., Any]", ce qui signifie qu'il prend n'importe quel nombre et le type d'arguments et renvoie une valeur de n'importe quel type. Si cela est trop libre, vous pouvez spécifier davantage les types de liste d'arguments d'entrée et le type de retour.
Par exemple, pour une fonction qui prend deux entiers et renvoie un entier :
def sum(a: int, b: int) -> int: return a+b
L'annotation de type correspondante serait :
Callable[[int, int], int]
Syntaxe générale
La syntaxe générale pour spécifier un type de fonction à l'aide de "typing.Callable" est :
Callable[[ParamType1, ParamType2, ..., ParamTypeN], ReturnType]
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!