Python 3.10+: Optional[Type] or Type | None
Now that Python 3.10 has been released, is there any preference when indicating that a parameter or returned value might be optional, i.e., can be None . So what is preferred: Option 1: def f(parameter: Optional[int]) -> Optional[str]: Option 2: def f(parameter: int | None) -> str | None: Also, is there any preference between Type | None and None | Typ