2016-05-23 5 views
-2

私はPythonを初めて使用していて、すごく困惑しています。私は、インデックスされた値の後に配列内の最初の非ゼロインデックスを探したい。基本的に配列は次のようになりますインデックス値の後にリスト内のゼロ以外の番号の最初のインスタンスを見つけよう

myarray=[x,y,z,0,0,...,0,a,b,c,...] 

これを達成するためにフィルタまたは次のコマンドを変更することはできますか?ここでは、最初のゼロ以外のインデックスを見つけるためにそれらを使用することができるポストを見ましたが、3番目のインデックス(n = 2)の後に1つを見つける必要があります。ありがとう!

答えて

1

これを試すことができます!

myarray=[45,45,1,0,0,0,8,6,7] 

def firstNon0(_list,startindex): 
    for index in range(startindex,len(_list)): 
     if _list[index]!=0:return index 
    return None 

print myarray[firstNon0(myarray,3)] 


>>8 
関連する問題