Ich habe eine Liste, die enthält immer nur Einsen und Nullen.
Ich brauche eine Liste der nicht-null-Indizes der Liste:
a = [0, 1, 0, 1, 0, 0, 0, 0]
b = []
for i in range(len(a)):
if a[i] == 1: b.append(i)
print b
Was wäre der "pythonic" Art und Weise, dies zu erreichen ?
InformationsquelleAutor der Frage George Profenza | 2010-11-06
InformationsquelleAutor der Antwort Ignacio Vazquez-Abrams
Nicht wirklich eine "neue" Antwort, aber numpy hat diese eingebaut.
InformationsquelleAutor der Antwort Brian Larsen
Seit THC4k erwähnt komprimieren (in python2.7+)
InformationsquelleAutor der Antwort John La Rooy
Wünschte nur hinzufügen Erklärung für 'lustig' Ausgabe aus dem vorherigen asnwer. Ergebnis ist ein Tupel enthält, die Vektoren von Indizes für jede dimension der matrix. In diesem Fall Benutzer ist die Verarbeitung, was als ein Vektor in numpy, damit die Ausgabe ist ein Tupel mit einem element.
InformationsquelleAutor der Antwort Lexa