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.
@roliver: Das ist sicher kein Ausschnitt aus Deinem Programm denn das ist sowohl in Python 2 als auch in Python 3 ein `SyntaxError`.
Eingerückt wird ausserdem mit vier Leerzeichen pro Ebene. Nicht mit einem oder zwei.
Please call it what it is: copyright infringement, not piracy. Piracy takes place in international waters, and involves one or more of theft, murder, rape and kidnapping. Making an unauthorized copy of a piece of software is not piracy, it is an infringement of a government-granted monopoly.
die Einrückung ist in Original alles auf 4 Zeichen, ist beim Kopieren passiert, sorry, das Programm läuft mit V2 gut, leider habe ich das mit V3 noch nicht ganz verstanden. Wo kann ich das denn nach lesen?
Das msg topic sind Bytes. Du vergleichst mit einem String. Geht halt nicht. Und überall sonst wandelst du durch “.decode()” Bytes zu einem String. Nur an einer Stelle nicht......
Wobei ich hier auch den umgekehrten Weg gehen würde — nicht dekodieren, sondern mit Bytes-Literalen vergleichen.
Was ist hier eigentlich `mqtt`? Das müsste doch ein `Client`-Exemplar sein – da ist der `mqtt` irgendwie komisch. Und was ist `message`? Und wie unterscheidet sich das von `msg`? Was ja wohl eigentlich `message` heissen sollte. Abkz. s. doof.
Es gibt nicht nur ``if`` sondern auch ``elif`` — da gibt's hier zwei stellen an denen das sinnvoll(er) wäre. Und ``else`` gibt es auch für die Fälle wo etwas kommt mit dem man nicht gerechnet hat. Das sollte man mindestens mal protokollieren. Damit wird die Fehlersuche einfacher.
Zeichenketten und Werte mit ``+`` zusammensetzen ist eher BASIC als Python. In Python gibt es Zeichenkettenformatierung mit der `format()`-Methode. Wobei man bei dem `print()` auch einfach mehrere Argumente übergeben könnte (und Leerzeichen aus Zeichenkettenliteralen entfernen).
`pout()` ist kein guter Funktionsname, weil der so überhaupt nicht verrät was die Funktion macht.
Please call it what it is: copyright infringement, not piracy. Piracy takes place in international waters, and involves one or more of theft, murder, rape and kidnapping. Making an unauthorized copy of a piece of software is not piracy, it is an infringement of a government-granted monopoly.