在 python 函数中正确提示 '->' 多个 return 类型

Proper way hint '->' mutiple return type in python function

我正在编写一个函数,可以 return 一个字符串或 None。

所以如果我想用“->”来暗示,

这是正确的做法吗

def get_context(arg: str) -> str or None:
     ...

should I use the str or None here or theres a better way of hinting?

Union 当某物可以是多种类型之一时应使用

from typing import Union

def get_context(arg: str) -> Union[str, None]:
    ...

typing.Optional 可以在类型为 None 或其他类型时使用

from typing import Optional

def get_context(arg: str) -> Optional[str]:
    ...