Int-Werte aus dict{} extrahieren
Verfasst: Montag 21. November 2016, 21:38
Hallo,
ich arbeite gerade mit dem SensHat von RaspPi.
Ziel: das Programm soll vorerst 8 Zufallsfarben generiern :ok.
Da war meine Vorstellung (kenne ein wenig C/C++ und PHP ) ich fülle einen Array.
Da Python diese nicht zur Verfügung stellt bediente ich mich einer Liste (list).
Diese konnte ich nicht, (wie ich es kenne) in einer for-Schleife indexieren
BSP
[codebox=c file=Unbenannt.c]
for(i=1; i<=10; i++)
{
}
[/code]
erste Subfrage, geht das?
Dazu bitte erst weiterlesen da nach meinem jetztigem Wissen jeweils [key: value]
zu jedem "key" ein "value-Wert" gehört.
Meine Lösung, weil Tutorials, Bücher, Foren diese Möglichkeit boten
den Weg über ein Dictionary
meine Lösung dazu:
SO und jetzt brauch ich den ersten rgb-Wert also drei INT-Werte z.B. 104, 251, 025
Meine Lösung die Werte aus dem "dict" in eine "list" überführen.
dh.
und genau das finde ich eher umständlich
Die Ausgabe bzw. die Weiterverwendung erfolgt dann über eine "SensHat - Funktion"
Das Programm macht das was es soll, aber schöner Code schaut anders aus.
Welche Möglichkeiten gibt es denn, die Funktion
8mal aufzurufen und die Werte in der Form
zu erhalten, das ganze muss in einer " Art Variablen " geschehen. Der einzelne der 8 Werte, wird dann jeweils 8mal
abgerufen. (LED-Matrix 8x8)
Unterschiedlichste Klammerformen wurden probiert. Also wenn die Klammern die Lösungs des Problems bieten würden,
dann bitte, die richtige Syntax in der exakten Schreibweise posten.
Da ich die Suchfunktion der div. Suchmaschinen bemüht habe, leider gar nicht so richtig weiß, wie das Problem denn richtig benannt werden könnte, frag ich mal die Profis
Danke und Grüße
Martin
ich arbeite gerade mit dem SensHat von RaspPi.
Ziel: das Programm soll vorerst 8 Zufallsfarben generiern :ok.
Da war meine Vorstellung (kenne ein wenig C/C++ und PHP ) ich fülle einen Array.
Da Python diese nicht zur Verfügung stellt bediente ich mich einer Liste (list).
Diese konnte ich nicht, (wie ich es kenne) in einer for-Schleife indexieren
BSP
[codebox=c file=Unbenannt.c]
for(i=1; i<=10; i++)
{
}
[/code]
erste Subfrage, geht das?
Dazu bitte erst weiterlesen da nach meinem jetztigem Wissen jeweils [key: value]
zu jedem "key" ein "value-Wert" gehört.
Meine Lösung, weil Tutorials, Bücher, Foren diese Möglichkeit boten
den Weg über ein Dictionary
meine Lösung dazu:
Code: Alles auswählen
from sense_hat import SenseHat
from random import randint
from time import sleep
sense = SenseHat()
x = 0 # x Koordinate der LED Matrix
y = 0 # x Koordinate der LED Matrix
def farben (r, g, b):
#""" Generiere neue Zufallsfarbe """
r = randint(0, 255)
g = randint(0, 255)
b = randint(0, 255)
return (r, g, b);
# besorge mir 8 Zufalls_Farben brauch ich zu Anfang
# index 0 bis 7 liegen im Dictionary
# in Form 0:[78, 173, 254]
rgb_x = {}
for i in range(8):
rgb_x[i] = [(farben('r', 'g', 'b'))]
#print (rgb_x)
#print ( rgb_x[0])
for value in rgb_x:
print(rgb_x[value]) #dient der Kontrolle was gelesen wurde
Meine Lösung die Werte aus dem "dict" in eine "list" überführen.
dh.
Code: Alles auswählen
rgb01 = []
rgb02 = []
rgb03 = []
rgb04 = []
rgb05 = []
rgb06 = []
rgb07 = []
rgb08 = []
rgb01 = rgb_x[0]
rgb_01 = rgb01[0]
rgb02 = rgb_x[1]
rgb_02 = rgb02[0]
rgb03 = rgb_x[2]
rgb_03 = rgb03[0]
rgb04 = rgb_x[3]
rgb_04 = rgb04[0]
rgb05 = rgb_x[4]
rgb_05 = rgb05[0]
rgb06 = rgb_x[5]
rgb_06 = rgb06[0]
rgb07 = rgb_x[6]
rgb_07 = rgb07[0]
rgb08 = rgb_x[7]
rgb_08 = rgb08[0]
Die Ausgabe bzw. die Weiterverwendung erfolgt dann über eine "SensHat - Funktion"
Code: Alles auswählen
sense.set_pixel(x, y, rgb_01[0], rgb_01[1], rgb_01[2])
Welche Möglichkeiten gibt es denn, die Funktion
Code: Alles auswählen
def farben (r, g, b):
#""" Generiere neue Zufallsfarbe """
r = randint(0, 255)
g = randint(0, 255)
b = randint(0, 255)
return (r, g, b);
Code: Alles auswählen
sense.set_pixel(x, y, rgb_01[0], rgb_01[1], rgb_01[2])
abgerufen. (LED-Matrix 8x8)
Unterschiedlichste Klammerformen wurden probiert. Also wenn die Klammern die Lösungs des Problems bieten würden,
dann bitte, die richtige Syntax in der exakten Schreibweise posten.
Da ich die Suchfunktion der div. Suchmaschinen bemüht habe, leider gar nicht so richtig weiß, wie das Problem denn richtig benannt werden könnte, frag ich mal die Profis
Danke und Grüße
Martin