Python 使用类型检查检查字符串是否仅具有某些值
假设我有一个python函数Python 使用类型检查检查字符串是否仅具有某些值,python,python-3.x,python-typing,Python,Python 3.x,Python Typing,假设我有一个python函数def func_AB(param1:str)param1只能接受值A或B。如果它采用任何其他字符串值,则会出现错误 发生这种情况时,是否可以使用python类型检查来给出错误?目前,我使用assert检查param1是否包含有效的字符串值 我正在使用您正在寻找的python 3.8.5 你在找什么 如果您被限制为只有几个有效值,为什么不使用字符串来代替呢?如果您正在查看两个可能的有效值,那么您并不是真正的类型检查@Green Clope Guy,这一点很好。我问了一
def func_AB(param1:str)
param1
只能接受值A
或B
。如果它采用任何其他字符串值,则会出现错误
发生这种情况时,是否可以使用python类型检查来给出错误?目前,我使用assert
检查param1
是否包含有效的字符串值
我正在使用您正在寻找的python 3.8.5
你在找什么
如果您被限制为只有几个有效值,为什么不使用字符串来代替呢?如果您正在查看两个可能的有效值,那么您并不是真正的类型检查@Green Clope Guy,这一点很好。我问了一个愚蠢的问题。一开始就错了。类型检查用于检查
类型
,而不是值
。此外,类型检查仅由IDE强制执行。python并不强制执行类型检查。如果您仅限于几个有效值,为什么不使用字符串来代替呢?如果您正在查看两个可能的有效值,那么您并不是真正的类型检查@Green Clope Guy,这一点很好。我问了一个愚蠢的问题。一开始就错了。类型检查用于检查类型
,而不是值
。此外,类型检查仅由IDE强制执行。python并不强制执行类型检查。你太棒了。根据这些评论,我认为不存在答案。我希望我能给你更多的分数。哈哈,你太棒了。根据这些评论,我认为不存在答案。我希望我能给你更多的分数。哈哈。
from typing import Literal
def func_AB(param1: Literal['A', 'B']):
...