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
intpar example, on continue à utiliserOptional[int]