Jouons avec les bits... en Python

Magazine
Marque
GNU/Linux Magazine
Numéro
205
Mois de parution
juin 2017
Domaines


Résumé
Avez-vous déjà essayé de manipuler des données binaires en Python ? Ce n'est pas évident n'est-ce pas ? La question qui se pose est alors la suivante : la limitation provient-elle du langage lui-même ou simplement du manque de documentation à ce sujet ? Pour pouvoir y répondre, je me suis plongé dans une série de tests.

Bienvenue dans le monde merveilleux du binaire en Python, un monde où... beaucoup de gens se cassent les dents. Pourtant, venant d'un langage permettant d'effectuer de nombreuses opérations complexes très simplement, cela paraît complètement illogique.

Cet article présentera une suite de manipulations réalisables en Python pour manipuler des bits. Toutes les manipulations seront présentées sous la forme de tests dans des shell Python auxquels j'ai ajouté la coloration syntaxique pour en faciliter la lecture. Tout débute donc par un :

$ python3

1. Pour commencer : les octets

Il existe bien un type permettant de définir des octets et comme on pouvait s'y attendre, son nom est bytes :

>>>octet = bytes(1)

>>>octet

b'\x00'

>>>type(octet)

<class'bytes'>

La fonction bytes() nous permet donc de créer des chaînes d'octets en précisant en paramètre le nombre d'octets souhaité :

>>>octets = bytes(4)

>>>octets

b'\x00\x00\x00\x00'

Le type bytes est non mutable : vous ne pourrez donc pas...

Cet article est réservé aux abonnés. Il vous reste 96% à découvrir.
à partir de 21,65€ HT/mois/lecteur pour un accès 5 lecteurs à toute la plateforme
J'en profite


Articles qui pourraient vous intéresser...

Python « moderne » : comment coder en Python en 2020 ?

Magazine
Marque
GNU/Linux Magazine
HS n°
Numéro
110
Mois de parution
septembre 2020
Domaines
Résumé

Le langage Python évolue progressivement, version après version et de nouvelles fonctionnalités voient le jour et changent la manière dont le langage peut être appréhendé.Au-delà de la curiosité que ces changements provoquent, ils sont des révolutions silencieuses ayant un impact réel sur le style de codage.

Les outils pour les développeurs Python

Magazine
Marque
GNU/Linux Magazine
HS n°
Numéro
110
Mois de parution
septembre 2020
Domaines
Résumé

Pouvoir déboguer son code en toutes circonstances, le tester à chaque amélioration, suivre son utilisation et son bon fonctionnement et être capable d’en optimiser les points faibles.Ce sont des enjeux importants que tous les développeurs connaissent. Voici les outils pour y parvenir.