techniker Geschrieben November 24, 2020 at 12:26 Geschrieben November 24, 2020 at 12:26 Sehr geehrtes Tinkerforge Team Ich benötige kurz Hilfe für den Python 3 Syntax um ein Tuple oder eine Liste an eine Methode zu übergeben. Beispiel: red = (30, 0, 0) self.sw.set_color(red) wie muss das Tuple red auseinander genommen werden um akzeptiert zu werden? Beste Grüsse Sven Zitieren
rtrbt Geschrieben November 24, 2020 at 12:50 Geschrieben November 24, 2020 at 12:50 Moin, Du kannst mit einem * Tupel o.Ä auf Parameter-Listen expandieren, z.b. so: self.sw.set_color(*red) Zitieren
techniker Geschrieben November 24, 2020 at 12:59 Autor Geschrieben November 24, 2020 at 12:59 Danke vielmals, genau dass was ich gesucht habe. Zitieren
techniker Geschrieben November 24, 2020 at 13:21 Autor Geschrieben November 24, 2020 at 13:21 Nochmals eine Frage: Kann man in Python 3 die Bedingungen gleicher Logik z.B != mit mehreren Variablen vergleichen, also in einer Kurzform anstatt diverse "nicht gleich" hintereinander zu schreiben. So das self.sw.get_color() nur einmal aufzuführen ist. "and self.sw.get_color() != [red, green...." geht eben nicht. if self.ping(self.HOST_Controller) == False and self.sw.get_color() != [red, green, purple] self.sw.set_color(*blue) elif self.ping(self.HOST_Controller) == True and self.sw.get_color() != red and self.sw.get_color() != green and self.sw.get_color() != purple: Zitieren
rtrbt Geschrieben November 24, 2020 at 13:45 Geschrieben November 24, 2020 at 13:45 Solange red green und blue (wie oben) Tupel sind, kannst du folgendes machen: if self.sw.get_color() not in [red, green, purple]: self.sw.set_color(*blue) (oder alternativ ohne das not wenn du vergleichen willst ob get_color() gleich einem Element der Liste ist) Zitieren
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.