リストを反復処理するPython構文はfor x in y:
、ポインターが現在正しい要素を何とか覚えている必要がありますか?私が頼らずにこれを解決しようとしているので、どのようにその価値にアクセスしますか? for index, x in enumerate(y):
私がこれをやりたいという技術的な理由は、enumerate()
既存の「ポインタ」に何らかの形でアクセスしている間はパフォーマンスが低下すると想定しているためです。ただし、回答から、このポインタは非常にプライベートでアクセスできないことがわかります。
これを実行したかった機能的な理由は、現在の要素のfloat値が「目的の」float範囲から遠く離れている場合に、たとえば100要素をスキップできるようにするためです。
- 答え -
これを解決する方法は次のとおりです(純粋な概略例)。
# foo is assumed to be ordered in this example
foo = [1,2,3,4,5,6....,99,100]
low = 60
high = 70
z = iter(foo)
for x in z:
if x < low-10
next(islice(z,10,10),None)
if x > high
break