首页 > 解决方案 > 如何为列表中的元素创建 if 语句?

问题描述

我想知道如何创建一个对列表执行某些操作的 if 语句,只要列表中至少有一个值满足 if 语句的要求。

例如,给定一个列表

x=[1,2,3,4,5,6,7,8,9]
y=[1,2,3,4]
z=[1,2,3,8]

我想创建一个 if 语句,如果列表包含值介于 5 和 10 之间的元素,则列表附加 ***。

意思是,在 if 语句之后,结果将是

x=[1,2,3,4,5,6,7,8,9,***]
y=[1,2,3,4]
z=[1,2,3,8,***]

由于 x 和 z 都包含介于 5 和 10 之间的元素,因此它们会收到 ***。

标签: python

解决方案


你可以这样做。any()使用生成器表达式和函数测试是否有任何元素符合您的条件。

x = [1,2,3,4] #two lists for testing
y = [5]       

if any(5 <= i <= 10 for i in x):
        x.append("***")

if any(5 <= i <= 10 for i in y):
        y.append("***")

print(x,y)

输出:

[1, 2, 3, 4] [5, '***']

推荐阅读