Comprendre le préfixe «b» dans les chaînes Python
Python introduit le préfixe «b» avant les chaînes pour indiquer un littéral d'octets. Ce préfixe a une signification et une utilité spécifiques dans le code source Python3.
Chaînes d'octets
Une chaîne d'octets représente une séquence d'entiers allant de 0 à 255. Chaque entier correspond à un point de code ASCII, permettant à l'expression de modéliser des données binaires, telles que du texte codé. Pour garantir la lisibilité, Python affiche les octets sous forme de points de code ASCII, en utilisant des séquences d'échappement pour les caractères non imprimables.
Création de chaînes d'octets
Les chaînes d'octets peuvent être créées à l'aide de l'option 'b ' préfixe avant une chaîne littérale :
<code class="python">b"abcdef"</code>
Alternativement, un objet bytes peut être construit à partir d'une séquence d'entiers, telle qu'une liste :
<code class="python">bytes([72, 101, 108, 108, 111]) # b'Hello'</code>
Décodage et codage Chaînes d'octets
Si une valeur d'octets contient du texte, elle peut être décodée à l'aide du codec correct, tel que UTF-8 :
<code class="python">strvalue = bytesvalue.decode('utf-8')</code>
Pour convertir une chaîne de texte (str) en octets, il doit être codé :
<code class="python">bytesvalue = strvalue.encode('utf-8')</code>
Avantages des chaînes d'octets
Les chaînes d'octets sont utiles lorsque vous travaillez avec des données binaires ou lors de l'interface avec des systèmes existants. Python3 prend en charge à la fois les chaînes normales (str) et les chaînes d'octets (bytes), selon le cas d'utilisation spécifique.
Compatibilité Python 2
Python 2 versions 2.6 et 2.7 introduites la syntaxe littérale de chaîne 'b'..', permettant la compatibilité du code entre Python 2 et Python 3.
Immuabilité
Les chaînes d'octets sont immuables, semblables aux chaînes normales dans Python. Pour les valeurs d'octets mutables, utilisez l'objet 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!