码迷,mamicode.com
首页 > 编程语言 > 详细

python3 中bytes与str类型

时间:2018-02-15 17:16:15      阅读:297      评论:0      收藏:0      [点我收藏+]

标签:bubuko   字节流   字符   打开   隐式   9.png   乱码   拼接字符串   关系   

python3最重要的新特性之一就是对字符串和二进制流做了明确的区分。文本总是unicode,由str类型表示用于显示。二进制则是由bytes类型表示,用于存储和传输。bytes是byte的序列,而str是unicode的序列。Python3不会以任意隐式的方式混用str和bytes,不能拼接字符串和字节流,也无法在字节流里搜索字符串(反之亦然)。也不能将字符串传入参数为字节流的函数(反之亦然)。

技术分享图片

str与bytes之间的转换关系:str-->encode()-->bytes--->decode()--->str

转换方式1:encode() ,decode()

技术分享图片

转换方式2:bytes()  , str()

技术分享图片

技术分享图片

 不同编码类型的转换

技术分享图片

技术分享图片

bytes作为转换中间媒介通过encode() decode()在各种编码如utf-8 \gbk等之间进行相互转换。常见乱码错误,多是由于打开解码方式与文件编码方式不同造成的。

python3 中bytes与str类型

标签:bubuko   字节流   字符   打开   隐式   9.png   乱码   拼接字符串   关系   

原文地址:https://www.cnblogs.com/ghming/p/8449613.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!