I erhalten, Daten in dem folgende Format:Return-Index des letzten Nicht-Null-Elements in der Liste
[-2, -2, 0, 0, 0, 0, 0]
[-2, 20, -1, 0, 3, 0, 0]
wobei jede Zeile ein anderer Eingang zu sein. Die Listen könnten länger als 7 Elemente sein. Ich brauche die Indexposition des letzten Nicht-Null-Element zurück, so:
[-2, -2, 0, 0, 0, 0, 0]
>>> 1
[-2, 20, -1, 0, 3, 0, 0]
>>> 4
Der folgende Code ist dies die meiste Zeit:
def getIndex(list):
for element in reversed(list):
if element != 0:
return list.index(element)
Es ist jedoch nicht, wenn es nicht funktioniert sind zwei der gleichen Nummern, wie im ersten Beispiel oben, das 0
zurückgibt, weil -2
in der 0ten und 1sten Position der Liste ist.
Also wie bekomme ich den Index des letzten Nicht-Null-Elements einer Liste, auch wenn es Elemente mit dem gleichen Wert gibt?
sehr schön Verwendung von 'next'! +1 –