[英]python iterating through lists
考慮下面的列表
filters= [u, i, g, r, z]
result = [None, 34, None, None, 45]
result
中的項目是針對filters
中的每個過濾器計算的。 過濾器u, g, z
碰巧沒有返回任何結果。 所以我會使用返回值的過濾器重新計算result[0], result[2], result[4],
的值。
我的問題是遍歷兩個列表並使用 closet 過濾器來計算結果中缺少的值。 例如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)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.