Maison >développement back-end >Tutoriel Python >Conversion entre octets et chaîne en python3

Conversion entre octets et chaîne en python3

高洛峰
高洛峰original
2017-02-13 13:45:361478parcourir

Préface

La nouvelle fonctionnalité la plus importante de Python 3 est probablement une distinction plus claire entre le texte et les données binaires. Le texte est toujours Unicode et est représenté par le type str, et les données binaires sont représentées par le type bytes. Python 3 ne mélange pas str et bytes de manière implicite, ce qui rend la distinction entre les deux particulièrement claire. Vous ne pouvez pas concaténer des chaînes et des paquets d'octets, rechercher des chaînes dans des paquets d'octets (et vice versa) et transmettre des chaînes à des fonctions qui prennent des paquets d'octets comme paramètres (et vice versa).

Comment créer des octets données en python3.0

bytes([1,2,3,4,5,6,7,8,9])
bytes("python", 'ascii') # 字符串,编码

Définissez d'abord une chaîne originale,

Python 3.2.3 (default, Apr 11 2012, 07:15:24) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> website = 'http://www.www.php.cn/'
>>> type(website)
<class &#39;str&#39;>
>>> website
&#39;http://www.www.php.cn/&#39;
>>>

Encoder selon utf-8 et convertir en octets

>>> website_bytes_utf8 = website.encode(encoding="utf-8")
>>> type(website_bytes_utf8)
<class &#39;bytes&#39;>
>>> website_bytes_utf8
b&#39;http://www.www.php.cn/&#39;
>>>

Encoder selon gb2312 et convertir en octets

>>> website_bytes_gb2312 = website.encode(encoding="gb2312")
>>> type(website_bytes_gb2312)
<class &#39;bytes&#39;>
>>> website_bytes_gb2312
b&#39;http://www.php.cn/&#39;
>>>

Décoder en chaîne, laisser vide par défaut

>>> website_string = website_bytes_utf8.decode()
>>> type(website_string)
<class &#39;str&#39;>
>>> website_string
&#39;http://www.php.cn/&#39;
>>>
>>>

Décoder en chaîne, utiliser la méthode gb2312

>>> website_string_gb2312 = website_bytes_gb2312.decode("gb2312")
>>> type(website_string_gb2312)
<class &#39;str&#39;>
>>> website_string_gb2312
&#39;http://www.php.cn/&#39;
>>>

Pour plus d'articles liés à la conversion entre octets et chaîne en python3, veuillez faire attention au site Web PHP chinois !

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn