使用类型检查来检查字符串是否仅具有某些值

use*_*207 4 python python-3.x python-typing

假设我有一个 python 函数def func_AB(param1: str)param1只能采用值AB。如果它采用任何其他字符串值,则会出现错误。

发生这种情况时是否可以使用 python 类型检查来给出错误?目前,我用来assert检查是否param1包含有效的字符串值。

我正在使用 python 3.8.5

yed*_*tko 8

您正在寻找文字

from typing import Literal

def func_AB(param1: Literal['A', 'B']):
    ...
Run Code Online (Sandbox Code Playgroud)