ich eine Python-Funktion, die eine arbirary Anzahl von Bytes an einen Bus schreiben muss:Liste Argument übergeben auf -int iteriert werden nicht iterable
def Writebytes(self,values):
for byte in values:
self.writebyte(byte)
Die Idee wird Ihnen eine Liste von Bytes übergeben und es schreibt sie alle in den Bus, z
data=[0x10,0x33,0x14]
object.Writebytes(data)
Ich mag würde ein einziges Byte schreiben, ohne die [] so unterstützen, dass Sie eingeben können:
data=0x00
object.Writebytes(data)
das Ziel seine Nutzung zu erleichtern. Sie können jedoch nicht über den Int, der an Writebytes übergeben wird, iterieren. Gibt es eine einfache Möglichkeit, die Eingabe zu zwingen, immer eine Liste zu sein? (vorzugsweise in der Funktionsdefinition ..)
All diese iterables Zeug ist neu für mich in meiner ersten Woche von Python (was eigentlich ziemlich gut gegangen ist, zu Pythons Kredit). Ich benutze Python3 meist auf einem RPi btw ..
Vielen Dank!
Danke für den Vorschlag - das scheint ein ordentlicher Weg zu sein. Ich kann sehen, dass es robust ist, wie Sie erwähnt haben. Danke für die tolle Beratung - sehr geschätzt. – BrightSparkey