In Python gibt es eine Indexmethode. Diese Methode gibt den Index zurück, der auf das erste Suchzeichen trifft, aber es scheint, dass nicht alle Indizes zurückgegeben werden können. Selbst wenn ich es suche, kommt es aus irgendeinem Grund nicht heraus (obwohl die Suchmethode möglicherweise falsch ist). Deshalb habe ich kurz eine erweiterte Version der Indexmethode geschrieben, die mehrere Indizes zurückgibt, die auf die gesuchte Zeichenfolge treffen.
index_multi.py
def index_Multi(List,liter):
#Liste ist der Hauptteil der Liste, Liter ist das Zeichen, nach dem Sie suchen möchten
index_L = []
for val in range(0,len(List)):
if liter == List[val]:
index_L.append(val)
return index_L
Wenn Sie List als die zu durchsuchende Listengruppe und Liter als die zu durchsuchende Zeichenfolge angeben, wird der Index zurückgegeben, der mit der zu durchsuchenden Zeichenfolge übereinstimmt.
Extrahieren Sie 500 Indizes aus den in test_L enthaltenen Elementen.
index_test.py
def index_Multi(List,liter):
#Liste ist der Hauptteil der Liste, Liter ist das Zeichen, nach dem Sie suchen möchten
index_L = []
for val in range(0,len(List)):
if liter == List[val]:
index_L.append(val)
return index_L
if __name__ == "__main__":
test_L = [500,0,0,0,0,0,0,500,200]
print index_Multi(test_L,500)
Ausführungsergebnis
[0, 7]
Wenn es einen intelligenten Weg oder eine intelligente Methode gibt, werden wir diesen Artikel löschen.
** Nachtrag ** Sie haben darauf hingewiesen. Diese Methode kann in einer Zeile ausgedrückt werden.
index_test.py
if __name__ == "__main__":
test_L = [500,0,0,0,0,0,0,500,200]
index_num = [n for n, v in enumerate(test_L) if v == 500]
print index_num
Elementbestätigung im Operator, Indexmethode, Zählmethode
Recommended Posts