Convertir un octet Python en "entier 8 bits non signé"
Je suis de la lecture dans un tableau d'octets/liste de socket. Je veux Python pour traiter le premier octet comme un "non signé 8 bits entier". Comment est-il possible d'obtenir sa valeur entière comme un entier non signé de 8 bits entier?
source d'informationauteur bbb
Vous devez vous connecter pour publier un commentaire.
Utiliser le struct module.
Noter que déballer toujours retourne un tuple, même si vous êtes seulement le déballage d'un élément.
Aussi, jetez un oeil à cette SORTE de question.
octets/bytearray est une séquence d'entiers. Si vous venez d'accéder à un élément par son indice, vous aurez un nombre entier:
De par leur définition, les octets et bytearrays contenir des entiers dans le
range(0, 256)
. Ils sont donc "non signé de 8 bits entiers".Un autre très raisonnable et simple option, si vous avez juste besoin le premier octet de valeur entière, serait quelque chose comme ce qui suit:
Si vous souhaitez décompresser tous les éléments de votre reçu de données à la fois (et ils ne sont pas un groupe homogène tableau), ou si vous êtes aux prises avec multibyte des objets comme des nombres entiers de 32 bits, alors vous aurez besoin d'utiliser quelque chose comme la struct module.