Python 如何检查变量是否是类型中定义的下标泛型的实例?

Python 如何检查变量是否是类型中定义的下标泛型的实例?,python,Python,i、 e.如何使这项工作有效 python不允许这样做: 输入导入列表中的 isinstance([“a”、“b”],列表[str]) #TypeError:下标泛型不能用于类和实例检查 可能的解决办法: 输入导入列表中的 导入第三方软件包 第三方软件包isinstance([“a”、“b”],列表[str]) 我尝试了mypy,但mypy似乎只能通过命令行调用。我不知道如何通过python代码使其工作。我发现多亏了@user8408080,但这并不是我想要的。然后我使用typeguard搜

i、 e.如何使这项工作有效

python不允许这样做:

输入导入列表中的

isinstance([“a”、“b”],列表[str])
#TypeError:下标泛型不能用于类和实例检查
可能的解决办法:

输入导入列表中的

导入第三方软件包
第三方软件包isinstance([“a”、“b”],列表[str])

我尝试了mypy,但mypy似乎只能通过命令行调用。我不知道如何通过python代码使其工作。

我发现多亏了@user8408080,但这并不是我想要的。然后我使用typeguard搜索堆栈溢出,并从中找到两个类似的库:

最后,我得到了我想要的如下

导入类型哨兵
从输入导入列表开始
string_list=['nobody','expected','the','西班牙语','inqusion']
string\u list\u class=list[str]
tc1=typesentry.Config()
is_type=tc1.is#type相当于isinstance()
是类型化的(字符串列表、字符串列表类)

感谢@user8408080,我发现,但这并不是我想要的。然后我使用typeguard搜索堆栈溢出,并从中找到两个类似的库:

最后,我得到了我想要的如下

导入类型哨兵
从输入导入列表开始
string_list=['nobody','expected','the','西班牙语','inqusion']
string\u list\u class=list[str]
tc1=typesentry.Config()
is_type=tc1.is#type相当于isinstance()
是类型化的(字符串列表、字符串列表类)

我在那里留下了一个空str,实际上是指任何列表或任何东西。问题不是isinstance的第一个变量,而是第二个变量。然而,我重新编辑了这个问题,使它更清晰。我留下了一个空的str,实际上是指任何列表,甚至任何东西。问题不是isinstance的第一个变量,而是第二个变量。然而,我重新编辑了这个问题,使它更清晰,并且可能是重复的