Spécification du type de fonction dans les indications de type
En Python, les indications de type sont utilisées 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 en tant que 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 comme type de fonction en utilisant "typing.Callable."
Implémentation
La syntaxe permettant de spécifier un type de fonction à l'aide de "typing.Callable" est la suivante :
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 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]
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3