0
Der folgende Code funktioniert gut für ein Entpacken mit einem 2-Werte.Python Entpacken mit variablen Werten (Python 2.4.3 ist Version)
recvStruct = '>hhhBBhhB'
recvStructSize = (len(data) - struct.calcsize(recvStruct))/2
recvStruct = recvStruct + str(recvStructSize) + 'h'
recvStructSize = struct.calcsize(recvStruct)
recvFormat = '%s%dx' % (recvStruct, len(data) - recvStructSize)
TransID , ProtoColID, PacketLength, UnitID, FC, WriteAddress, WordCount, ByteCount, datavalues[0], datavalues[1] = struct.unpack(recvFormat, data)
Aber ich möchte n Werte in Datenwerte tun. Ist ihre Art eine andere als eine Schleife? in einer einzigen Aussage zu tun? TransID, ProtoColID, PacketLength, UnitID, FC, Schreibadresse, Wordcount, ByteCount, Datenwerte = struct.unpack (recvFormat, Daten)
Dies ist ein eingebetteter Python 2.4
Sehr nette Antwort, danke. Ist dies eine Möglichkeit, die Größe von Datenwerten zu reduzieren, sagen wir, ich habe 5 neue Werte, die ich platzieren möchte, und halte die letzten 5 (die Größe war 10). Gibt es irgendeinen Weg? Sorry, ich bin neu bei Python, du antwortest mir beibringen –
@JeffB Ich verstehe nicht, können Sie klären? –
datavalues wird durch diese Anweisung neu definiert und ich möchte nur die Anfangswerte –