我们有什么方法可以使用type(obj)- > 检测对象是否在python中列表list.
但是我们如何检测对象是否是表单列表的列表:
[['a','b']['a','b'][][]]
Run Code Online (Sandbox Code Playgroud)
Mar*_*ers 44
使用isinstance()检查特定类型:
>>> isinstance([], list)
True
Run Code Online (Sandbox Code Playgroud)
使用all()以测试是否所有的元素都是某种类型的:
all(isinstance(elem, list) for elem in list_of_lists)
Run Code Online (Sandbox Code Playgroud)
all()短路; 如果任何测试返回False,则循环终止并False返回.只有当除了一个元素之外的所有元素都返回时True,才all()需要检查iterable的每个元素.
如果你想确保列表中的每个项目都是一个列表,你可以这样做:
if all(isinstance(i, list) for i in lst):
# All of the items are lists
Run Code Online (Sandbox Code Playgroud)
isinstance(i, list)是更好的书写方式type(i) == type(list)或type(i) == list)。all()True如果序列中的所有项目都是则返回True。False如果没有,它将返回True。