How to check if there's a tuple inside a list?
为什么这样做:
1 2 | seq = [(1, 2), (3, 4), (5, 6)] print(() in seq) |
返回
你想要
1 2 3 | >>> seq = [(1, 2), (3, 4), (5, 6)] >>> any(isinstance(x, tuple) for x in seq) True |
对于一般序列,可以使用
1 2 3 | >>> from collections import abc >>> any(isinstance(x, abc.Sequence) for x in seq) True |
然而,许多对象被非正式地视为序列,但既没有实现完整的协议
阅读这个很好的答案了解更多信息。
你可以在这里找到一个关于检测序列的问题。
您要检查的是列表中是否存在空元组。
您可以检查类型。
1 2 3 4 5 | def has_tuple(seq): for i in seq: if isinstance(i, tuple): return True return False |