ListComprehension - Typkonvertierung
Verfasst: Freitag 1. Juli 2016, 21:36
Hallo,
ich habe eine 10x10-Matrix bestehend aus Strings mit dem Wert '-1'.
Ich möchte nun auf eine bestimmte Range einer bestimmten 'Zeile' die Strings in Integer wandeln und das Ergebnis in einer anderen Liste speichern.
Da dachte ich, dass ich dafür eine ListComprehension benutzen kann; aber irgendwie haut das nicht so hin.
Hier hätte ich jetzt erwartet, dass ich mit x for x in matrix[2:4] die zwei Zeilen, also Listen aus der Matrix herausziehe, und dann mit int(y) for y jedes Element (String, dachte ich) einer jeden Zeile in einen Integer wandle.
Aber y scheint dort vom Typ List zu sein, und nicht vom Typ String.
So ganz steige ich durch LCs noch nicht durch...
Wer kann mich mal bitte aufgleisen?!
Besten Dank.
EDIT:
Ich habe die Klammern falsch gesetzt; so funktioniert es wie gewünscht:
ich habe eine 10x10-Matrix bestehend aus Strings mit dem Wert '-1'.
Code: Alles auswählen
matrix = [['-1'] * 10 for x in range(10)]
Da dachte ich, dass ich dafür eine ListComprehension benutzen kann; aber irgendwie haut das nicht so hin.
Code: Alles auswählen
ergebnisse = [int(y) for y in [x for x in matrix[2:4]]]
Aber y scheint dort vom Typ List zu sein, und nicht vom Typ String.
So ganz steige ich durch LCs noch nicht durch...
Wer kann mich mal bitte aufgleisen?!
Besten Dank.
EDIT:
Ich habe die Klammern falsch gesetzt; so funktioniert es wie gewünscht:
Code: Alles auswählen
ergebnisse = [[int(y) for y in x] for x in matrix[2:4]]