python 遍历列表

标签 python list loops

考虑下面的列表

filters= [u,    i,  g,    r,    z]
result = [None, 34, None, None, 45]

结果中的项目是针对filters中的每个过滤器计算的。碰巧过滤器 u, g, z 没有返回任何结果。因此,我将使用返回值的过滤器重新计算 result[0]、result[2]、result[4]、 的值。

我的问题是迭代两个列表并使用 Closed 过滤器来计算结果中缺少的值。 例如 result[0] 应使用 'i' 计算(i 最接近 u) result[2] 我们还使用 'i' 而不是 'z' 并且 result[3] 我们使用 ' z'。如何概括这一点? (过滤器是固定的,但值中的项目不断变化。)我想要得到的是一个带有两个过滤器的元组,(filter_missing_a_value_in_results,filter_to_used_to_computer_the_missing_value)

最佳答案

不是特别有效的解决方案:

def filters_by_distance(i):
    '''Generate filters by distance from i'''
    sorted_indices = sorted(range(len(filters)), key=lambda j: abs(j-i))
    return (filters[j] for j in sorted_indices)

关于python 遍历列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5897254/

相关文章:

python - 为什么并行任务第一次总是很慢?

python - python-单行嵌套循环

javascript - 单击时,循环遍历每个对象键

JavaScript 数学/循环动态创建行和列

python - 是否有理由不检查 virtualenv 环境以及 python 项目的源代码?

python - 遍历一系列运算符

python - Python 中非常大的 bool 列表

python - 对 python 列表的子集进行排序,使其具有与其他列表中相同的相对顺序

c - 生成随机数并在 C 中的范围内打印 "Done!"

python - 从列表字典创建层次结构