是否检查元组中列表的长度



我想检查元组中列表的长度,但在条件语句中执行此操作时遇到了问题。

如果我有一个看起来像这样的元组:

ex_tuple = (['Hello', 'To', 'World'], ['Planet', 'Earth'], ['World', 'Of', 'Earth'])

我想检查元组中的这些列表中是否有任何一个具有>2个元素。

以下是我所拥有的(似乎不起作用(:

if [(len(x)) for x in ex_tuple > 2]:
... do rest of program

但是,我收到一条错误消息">"元组和int之间不支持。我也试过使用'!=1或2’,但我收到了类似的信息。

这似乎是一个简单的解决方案,但我很难弄清楚哪里出了问题。非常感谢您的帮助-谢谢!

内置函数any()获取一个列表,如果任何元素都为True,则计算True,如果所有元素都为False,则计算False。把你的列表理解放在那里,把你的条件> 2移到len(x)旁边,把括号放在它周围

any(len(x)>2 for x in ex_tuple)
True

嗨,你可以尝试这个简单的循环来检查它;

for word_list in ex_tuple:
if len(list) > 2:
print(f"{list}: has more than 2 items.")

结果:

['Hello', 'To', 'World']: has more than 2 items.
['World', 'Of', 'Earth']: has more than 2 items.

最新更新