Listenelement eine Variable zuordnen

Python auf Einplatinencomputer wie Raspberry Pi, Banana Pi / Python für Micro-Controller
__deets__
User
Beiträge: 14545
Registriert: Mittwoch 14. Oktober 2015, 14:29

Der Index ist doch 0. Oder 1. Der steht doch in der if-Klausel. Und wozu willst du den Index denn überhaupt? Du kannst doch gar nichts damit anfangen. Du hast doch keine Liste von LEDs.
Manny
User
Beiträge: 13
Registriert: Mittwoch 5. Dezember 2018, 18:44

Ich glaube wir reden hier aneinander vorbei?

Lassen wir doch mal die LED ganz außen vor.

Ich habe eine Liste die sieht so aus:

Code: Alles auswählen

Index der Liste:				1	2	3	4	5	6	7	8	9	10	11	12	13	14	15	16	17	18	19	20
Inhalt der Listen Position:			0	0	0	1	0	0	0	0	0	0	0	1	0	0	0	0	0	0	0	0
Ergebnis:								4								12								
Ich will nun lediglich als Ergebnis die Zahlen 4 und 12 angezeigt bekommen.

Später kann ich dann immer noch eins Zuweisung machen und z.B. sagen: Nr.4 ist jetzt GPIO(17) und Nr.12 ist jetzt GPIO(27)

Ich hoffe ich konnte jetzt klar machen was ich überhaupt will?
__deets__
User
Beiträge: 14545
Registriert: Mittwoch 14. Oktober 2015, 14:29

indizes = [index for index, value in enumerate(ld) if value]
Manny
User
Beiträge: 13
Registriert: Mittwoch 5. Dezember 2018, 18:44

Code: Alles auswählen

indizes = [index for index, value in enumerate(ld) if value]
Muß ich das jetzt irgendwie in eine Schleife einbauen und wo wird das Ergebnis angezeigt?

Bekomme jetzt diese Fehlermeldung:
Exception ignored in: Exception ignored in: Exception ignored in:
__deets__
User
Beiträge: 14545
Registriert: Mittwoch 14. Oktober 2015, 14:29

Das ist eine Schleife. Und da wird nichts angezeigt, denn da steht kein print. Kannst du doch danach machen. Deine Fehlermeldung kann ich nicht entziffern, bitte die gesamte Fehlermeldung anzeigen.
Sirius3
User
Beiträge: 17759
Registriert: Sonntag 21. Oktober 2012, 17:20

@Manny: zeig doch mal den Code den Du ausführst, und die komplette Fehlermeldung. Mit Indizes arbeitet man in Python eigentlich so gut wie nie. Wenn doch, macht man bestimmt etwas falsch.
Manny
User
Beiträge: 13
Registriert: Mittwoch 5. Dezember 2018, 18:44

Es scheint jetzt zu klappen !
Ich habe den Code mit einem print erweitert, jetzt zeigt er mir auch die richtigen Werte an.
indizes = [index for index, value in enumerate(ld) if value]
print(indizes)
Vielen Dank euch @llen für die Hilfe, ich denke darauf kann ich jetzt weiter aufbauen. :P
Antworten