Comprendre le mystérieux préfixe 'b' dans les chaînes Python
Python propose différents préfixes pour définir différents types de chaînes, telles que les chaînes Unicode ( u) et les chaînes brutes (r). Mais que signifie un « b » précédent ?
Décodage du préfixe « b »
Le préfixe « b » désigne une chaîne d'octets littérale. Lorsqu'il est rencontré dans le code Python 3, cela signifie un objet bytes, contrairement aux chaînes Unicode classiques. Il sert également de représentation pour les objets bytes lorsqu'ils sont affichés dans le shell ou les conteneurs Python.
Caractéristiques des chaînes d'octets
Les objets Bytes sont constitués d'une séquence d'entiers dans le plage 0-255. Python les affiche sous forme de points de code ASCII pour faciliter la lecture. Cependant, les octets en dehors de la plage ASCII imprimable sont présentés sous forme de séquences d'échappement.
Construction et modification de chaînes d'octets
Les objets Bytes peuvent être construits à partir de n'importe quelle séquence d'entiers dans le Intervalle 0-255, comme les listes. L'indexation récupère des entiers, tandis que le découpage crée de nouveaux objets octets.
Distinction avec les chaînes de texte
Les octets représentent des données binaires, y compris le texte codé. Pour extraire du texte, l'objet bytes doit être décodé à l'aide du codec approprié (par exemple, UTF-8). À l'inverse, l'encodage est utilisé pour convertir des chaînes de texte en octets.
Compatibilité avec Python 2
Python 2 versions 2.6 et 2.7 permet la création de chaînes littérales à l'aide de l'option ' b'..' syntaxe pour faciliter la compatibilité du code avec Python 2 et 3.
Immutabilité et Bytearrays
Les objets Bytes, comme les chaînes, sont immuables. Pour les valeurs d'octets mutables, pensez à utiliser des objets bytearray().
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!