Une minute
Fonctions avec plusieurs types en Python 3.10
Python 3.10, sorti officiellement le 04 octobre 2021, permet d’écrire de manière plus lisible les différentes types que peuvent prendre les arguments et données retournées par les fonctions.
Example pour une fonction qui prend un argument de type int
ou str
et qui retourne un objet de type int
ou str
:
def ma_fonction(argument: int | str) -> int | str:
pass
On utilise le caractère: |
.
Avant, de Python 3.5 à 3.9, il fallait utiliser Union
du package typing
:
from typing import Union
def ma_fonction(argument: Union[int, str]) -> Union[int, str]:
pass
Si la fonction peut retourner None et un autre type comme
int
par example, on continue à utiliserOptional[int]