2009-09-11 8 views
6

sto ottenendo questo:Come ottenere ' x01' per 1

_format_ = "7c7sc" 
print struct.unpack(self._format_, data) 

('\x7f', 'E', 'L', 'F', '\x01', '\x01', '\x01', '\x00\x00\x00\x00\x00\x00\x00', '\x00') 

voglio prendere '\x01' e ottenere 1 da esso, vale a dire, convertire in `` int . Qualche idea? Grazie

risposta

20

ord("\x01") tornerà 1.

+0

Come dovrei gestire un intero di 2 byte, come '' 'b '\ x00 \ x80''''? – luckydonald

+0

Ho trovato '' 'int (" 0x "+ '' .join ([hex (x) [2:] per x in stringa_byte]), base = 16)' '' ma non può essere il migliore modo... – luckydonald

3

Forse si sta pensando di funzione ord?

>>> ord("\x01") 
1 
>>> ord("\x02") 
2 
>>> ord("\x7f") 
127 
Problemi correlati