例如:我有一个名为container
的列表。里面有一些元素,我想检查一下它们中是否有复杂的。
container = [1, 0.5, "text", 1j]
if isinstance(container[?], complex):
print("This list has complex elements")
在这个例子中,我本可以编写container[-1]
,但有通用的方法吗?我可以使用for循环,但我想知道是否有更好的方法可以做到这一点。
有很多方法可以将某些东西应用于整个容器,例如
any(isinstance(element, complex) for element in container)
您可以将列表理解与python的any()
函数一起使用:
any([isinstance(x, complex) for x in container])
如果列表中有复数,则返回True
。
使用纯python,我认为您必须显式地迭代列表。它可以通过简单的列表理解来完成:
if any([isinstance(c, complex) for c in container]):
print("List has complex elements")