2016-03-29 6 views
0

Ich arbeite mit PySerial-Bibliothek, um einige Byte von Serial Port zu lesen.Erstellen Sie eine Liste von Hex-Wert in Python

Ich brauche dieses Bytes in eine Liste zu speichern, aber ich würde speichern Daten im Hex-Format, da die serielle Peripherie mir spezifischen Befehlscode wie 0x10 senden, 0x30, ...

Der Code:

readByte = serialCOM.read(1) 
print 'Read Payload byte:' + str(readByte) 
packetPayload.append(readByte) 

erstellt eine Liste von Zeichen.

Wie kann man eine Liste von Hex-Werten erstellen?

Danke!

+0

Wie finden Sie heraus, dass Sie eine Liste von Zeichen haben? Wenn Sie es drucken, dekodiert Python justs diese Bytes in ASCII-Symbole. –

Antwort

0

In Python, Hex-Werte sind nur eine alternative Ansicht von ganzen Zahlen:

>>> 1 == 0x01 
True 
>>> 16 == 0x10 
True 

So, hier ist eine Liste:

>>> print([0x10, 0x20]) 
[16, 32] 

Es ist auch möglich, die int Funktion zu verwenden Integer-Wert zu erhalten aus einer Zeichenfolge:

>>> int('0x10', 16) # here, the 16 is for the base, and 0x is optionnal 
16 
+0

Danke für Ihre Hilfe! – Federico

Verwandte Themen