假设我有以下对象。
d = ["foo1", "foo2", "foo3", "foo4"]
c = 1
a = ["foo1", 6]
我想检查对象是否为特定类型的列表。如果我想检查d是否为列表,并且该列表包含字符串,我该怎么做?
d应该通过检查,但c和a应该未通过检查。
d = ["foo1", "foo2", "foo3", "foo4"]
print isinstance(d,list) and all(isinstance(x,str) for x in d)
True
d = ["foo1", "foo2", 4, "foo4"]
print isinstance(d,list) and all(isinstance(x,str) for x in d)
False
如果d
是一个列表,并且d
中的每个元素都是字符串,它将返回True。
您可以使用isinstance
检查int、dict
等。
list
?(list
是 Python 中的一种数据类型,表示列表。) "(foo",“bar”,“baz”)应该也会失败吗?或者甚至是一个str
,例如,“foobar”,它从技术上讲也可以进行迭代? - user44484