Pensez à ce que 10
, 20
et 30
sont en réalité. Bien sûr, ils sont des chiffres, mais exactement 10
est juste un decimal representation du nombre réel. Habituellement, il existe de nombreuses représentations différentes d'un seul nombre. Par exemple 0xA
, 0o12
et 0b1010
sont différentes représentations du même nombre qui est écrit 10
dans sa représentation décimale. Donc, d'abord, vous devriez penser à la façon d'obtenir cette représentation décimale d'un nombre. Heureusement, c'est très facile puisque la représentation décimale est la valeur par défaut générale pour les nombres. Donc, il vous suffit de convertir votre nombre en une chaîne en appelant le str()
function:
>>> str(10)
'10'
>>> str(20)
'20'
Une fois que vous faites cela, vous avez une chaîne avec la représentation correcte de votre numéro. Donc tout ce qui reste est de savoir comment convertir cette chaîne en un objet bytes
. En Python 3, un objet bytes
est juste une séquence d'octets. Donc, afin de convertir une chaîne en une séquence d'octets, vous devez décider comment représenter chaque caractère dans votre chaîne. Ce processus s'appelle l'encodage et se fait en utilisant str.encode()
. Pour les caractères de la plage ASCII, le codage réel ne compte pas vraiment car il est le même dans tous les encodages communes, de sorte que vous pouvez simplement coller avec la valeur par défaut UTF-8:
>>> '10'.encode()
b'10'
>>> '20'.encode()
b'20'
Alors maintenant, vous avez tout ce dont vous avez besoin . Il suffit de combiner ces deux choses, et vous pouvez convertir vos numéros en un objet bytes
de sa représentation décimale:
>>> str(10).encode()
b'10'
>>> str(20).encode()
b'20'
str (10) .encode() ' – poke