eine wohl einfache Frage, aber ich stehe wohl auf dem Schlauch - Ich habe eine Liste mit jeweils 4 Elementen in der Art
Code: Alles auswählen
colors = []
colors.append((150, 133, 50, 'Farbe1'))
colors.append((200, 140, 70, 'Farbe2'))
colors.append((200, 160, 60, 'Farbe3'))
Code: Alles auswählen
colors.sort(key=lambda rgb: colorsys.rgb_to_hsv(*rgb))
Code: Alles auswählen
"rgb_to_hsv() takes 3 positional arguments but 4 were given"
Code: Alles auswählen
[zeile[:3] for zeile in colors].sort(key=lambda rgb: colorsys.rgb_to_hsv(*rgb))
Zusammenfassend: Wie übergebe ich eine Liste mit x Parametern an eine fixe Funktion, die eine definierte Anzahl von Parametern hat, und erhalte als Rückgabewert wieder die sortierte Originalliste mit allen Werten - geht das überhaupt, oder muss ich die Originalfunktion kopieren und entsprechend ändern?
1000 Dank für jeden Tipp
Bob