[TOC]
這篇文章主要介紹了python3中bytes和string之間的互相轉換,文中給出了詳細的介紹和示例代碼,相信對大家具有一定的參考價值,有需要的朋友們下面來一起學習學習吧。
**前言**
Python 3最重要的新特性大概要算是對文本和二進制數據作了更為清晰的區分。文本總是Unicode,由str類型表示,二進制數據則由bytes類型表示。Python 3不會以任意隱式的方式混用str和bytes,正是這使得兩者的區分特別清晰。你不能拼接字符串和字節包,也無法在字節包里搜索字符串(反之亦然),也不能將字符串傳入參數為字節包的函數(反之亦然).
**python3.0中怎么創建bytes型數據**
bytes([1,2,3,4,5,6,7,8,9])
bytes("python", 'ascii') # 字符串,編碼
**首先來設置一個原始的字符串,**
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.jb51.net/'
>>> type(website)
>>> website
'http://www.jb51.net/'
>>>
**按utf-8的方式編碼,轉成bytes**
>>> website_bytes_utf8 = website.encode(encoding="utf-8")
>>> type(website_bytes_utf8)
>>> website_bytes_utf8
b'http://www.jb51.net/'
>>>
**按gb2312的方式編碼,轉成bytes**
>>> website_bytes_gb2312 = website.encode(encoding="gb2312")
>>> type(website_bytes_gb2312)
>>> website_bytes_gb2312
b'http://www.jb51.net/'
>>>
**解碼成string,默認不填**
>>> website_string = website_bytes_utf8.decode()
>>> type(website_string)
>>> website_string
'http://www.jb51.net/'
>>>
>>>
**解碼成string,使用gb2312的方式**
>>> website_string_gb2312 = website_bytes_gb2312.decode("gb2312")
>>> type(website_string_gb2312)
>>> website_string_gb2312
'http://www.jb51.net/'
>>>
**總結**
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
- 空白目錄
- serial
- serial 整理
- hex to str
- Python3 字符編碼
- 字符串編碼與Python 3編碼
- python3中bytes和string之間的互相轉換
- Python3 字符編碼
- python整數、字符串、字節串相互轉換
- python整數、字符串、字節串相互轉換
- python常用的十進制、16進制、字符串、字節串之間的轉換(長期更新帖)
- python中pyserial模塊使用方法
- 談談 Python 程序的運行原理
- flask
- Flask 在 Debug 模式下初始化2次
- Flask中向前端傳遞或者接收Json文件的方法
- 使用 Python 和 Flask 設計 RESTful API
- 使用 Flask-RESTful 設計 RESTful API