运行时中的 Python 嵌套类型签入,无需外部包



是否有一些来自python3.5类型的类型检查API,我可以用来在运行时检查嵌套类型。 例如:

from typing import List
check_type([1,2,3], List[int]) # True
check_type([1,2,''], List[int]) # False

这只是示例(它可以是 3 个或更多级别嵌套,具有列表、元组、字典(

您可以使用all()如下所示的内置函数:

def check_type(iterable, tp):
return all(isinstance(item, tp) for item in iterable)

输出:

>>> check_type([1, 2, 3], int)
True
>>>
>>> check_type([1, 2, ''], int)
False

最新更新