迭代列表元素的列表,如果整数有某个值,则返回错误消息

2024-09-27 00:21:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我有这样一个列表:

面包屑=[[“名称1”,45,140][“名称2”,85,95]]

大列表中每个列表中的第三个(或no[2])元素是用户给定变量的计算结果,不能高于80。如果它高于80,我需要返回一个错误消息,而不是打印计算结果。你知道吗

到目前为止我试过的:

i = 0
while i <= len(breadsticks):
     if breadsticks[i][2] > 80:
         print("you have entered too many breadcrums")
     elif i == len(breadsticks):
         for bread in breadsticks:
              print(breadsticks[bread][2])
     i += 1

我这样做不仅不管用,而且很笨拙。有没有其他平滑的方法来传递错误消息来阻止这样的事情?你知道吗


Tags: no用户名称消息元素列表lenif
1条回答
网友
1楼 · 发布于 2024-09-27 00:21:08

^{} function与测试每个嵌套列表的生成器表达式一起使用:

if any(bread[2] > 80 for bread in breadsticks):
    print("You have entered too many breadcrumbs")

这只会根据需要测试尽可能多的嵌套列表,以找到任何需要进行测试的嵌套列表True。你知道吗

注意,在循环中直接在breadsticks上循环更简单:

for bread in breadsticks:
    print(bread[2])

相关问题 更多 >

    热门问题