Elemente der Nummer x aus Liste auslesen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
haseluenne
User
Beiträge: 2
Registriert: Dienstag 7. Februar 2012, 00:18

Hallo,
ich habe eine lange Liste und möchte nur die Elemente mit den Indizes ausgeben lassen, die in einer anderen Liste vermerkt sind.
Beispielsweise:

Liste x mit 1000 Elementen, gebe mir nur die Elemente mit den Indizes a=[0,47,112,...] zurück.

Oder kürzeres beispiel: Daten x=[1,2,3,4,5], Indexliste a=[2,4], b auf c angewendet soll [3,5] zurückliefern.

Wie realisiere ich das pythonisch? Geht das ohne ne üble for-Schleife oder so?
y=x[a] funktioniert natürlich nicht, er erwartet ein int-element.

Danke im Voraus,
Gruß haseluenne
EyDu
User
Beiträge: 4881
Registriert: Donnerstag 20. Juli 2006, 23:06
Wohnort: Berlin

Code: Alles auswählen

>>> map(range(10).__getitem__, [1, 3, 5])
[1, 3, 5]
Edit: Vielleicht noch eine Alternative:

Code: Alles auswählen

>>> [range(10)[i] for i in [1, 3, 5]]
[1, 3, 5]
Das Leben ist wie ein Tennisball.
Antworten