Heim  >  Artikel  >  Backend-Entwicklung  >  Konvertierung zwischen Bytes und String in Python3

Konvertierung zwischen Bytes und String in Python3

高洛峰
高洛峰Original
2017-02-13 13:45:361433Durchsuche

Vorwort

Das wohl wichtigste neue Feature von Python 3 ist eine klarere Unterscheidung zwischen Text und Binärdaten. Text ist immer Unicode und wird durch den Typ str dargestellt, und Binärdaten werden durch den Typ bytes dargestellt. Python 3 vermischt str und bytes nicht implizit, was die Unterscheidung zwischen den beiden besonders deutlich macht. Sie können keine Zeichenfolgen und Bytepakete verketten, in Bytepaketen nach Zeichenfolgen suchen (und umgekehrt) und keine Zeichenfolgen an Funktionen übergeben, die Bytepakete als Parameter akzeptieren (und umgekehrt).

So erstellen Sie Bytes Daten in Python3.0

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

Legen Sie zunächst eine Originalzeichenfolge fest,

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;
>>>

Nach UTF-8 kodieren und in Bytes konvertieren

>>> 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;
>>>

Nach gb2312 kodieren und in Bytes konvertieren

>>> 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;
>>>

In String dekodieren, standardmäßig leer lassen

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

In String dekodieren, gb2312-Methode verwenden

>>> 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;
>>>

Weitere Artikel zur Konvertierung zwischen Bytes und Strings in Python3 finden Sie auf der chinesischen PHP-Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn