Comment puis-je spécifier plusieurs types de retour en Python à l'aide d'indices de type ?

Barbara Streisand
Libérer: 2024-11-15 14:17:02
original
1008 Les gens l'ont consulté

How Can I Specify Multiple Return Types in Python Using Type Hints?

Combining Return Types in Python Using Type-Hints

In Python, functions can return one of several types. Specifying these return types using type-hints increases code clarity and allows for earlier error detection.

To specify multiple return types, use the | (bitwise OR) operator for Python 3.10 and above:

def foo(client_id: str) -> list | bool:
    ...
Copier après la connexion

Before Python 3.10, use the Union type from the typing module:

from typing import Union

def foo(client_id: str) -> Union[list, bool]:
    ...
Copier après la connexion

Note that type-checking is not enforced during runtime. Type-hints serve as guidelines for code development, providing enhanced clarity and aiding in earlier detection of potential issues. For example, even though foo is annotated with str input and list output, the following code executes successfully, returning a str:

>>> def foo(a: str) -> list:
...     return "Works"
...

>>> foo(1)
'Works'
Copier après la connexion

However, the function's annotation is preserved:

>>> foo.__annotations__
{'return': <class 'list'>, 'a': <class 'str'>}
Copier après la connexion

Refer to PEP 483 for further details on type-hints and PEP 484 for the introduction of | syntax for return types in Python 3.10.

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