26
是否有对象是否使用type(obj)
名单在Python我们可以检测任何方式 - >list
。检查对象是否是Python中列表的列表?
但我们如何可以检测的对象是形式的名单列表:
[['a','b']['a','b'][][]]
是否有对象是否使用type(obj)
名单在Python我们可以检测任何方式 - >list
。检查对象是否是Python中列表的列表?
但我们如何可以检测的对象是形式的名单列表:
[['a','b']['a','b'][][]]
如果你想确保列表中的所有产品的列表,你可以做什么像这样:
if all(isinstance(i, list) for i in lst):
# All of the items are lists
isinstance(i, list)
是写type(i) == type(list)
或type(i) == list)
的更好的方法。all()
回报True
如果所有序列中的项目是True
。如果有任何不是True
,它将返回False
。isinstance()
使用来检查特定类型:
>>> isinstance([], list)
True
使用all()
以测试是否所有元件是某种类型的:
all(isinstance(elem, list) for elem in list_of_lists)
all()
短路;如果任何测试返回False
,则循环终止并返回False
。只有除了一个元素都返回True
all()
需要检查迭代器的每个元素。
'type(i)== type(list)'newer works anyway。 :-P'type(i)is list'可以有一些优点;它测试* exact *类型(不允许使用子类)。 – 2013-05-03 21:41:14