python - 如何为列表中的元素创建 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 之间的元素,因此它们会收到 ***。
解决方案
你可以这样做。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, '***']
推荐阅读
- javascript - ChartJS 3.0 - 数字格式
- android - 由于在 Admob 控制台中未验证地址引脚,广告服务被禁用 - 在 Admob 仪表板控制台中没有验证地址引脚的选项
- javascript - 将 Enjoyhint 与 nextJS 一起使用
- java - 不需要 JAXB 父类标记
- c# - Revit API 获取门几何图形周围的边界框(不包括秋千)
- python - 循环访问外部文件时调用函数
- windows - Windows 中目录的大小
- model-view-controller - 这是让 Autmapper 与 Ninject 一起工作的可接受方式吗?
- c++ - C++ 预处理器:展开参数列表
- excel - 无法将字符串分配给工作表单元格