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

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

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

使用encode() decode()转换数据类型,时编码以解码时必须使用相同的字符编码,否则出现乱码错误。

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

不同编码类型的转换

文本默认编码类型为Unicode,各种编码类型的转换必须先解码decode()为Unicode,然后再通过encode()编码转换为所需类型编码。通过encode() decode()在各种编码如utf-8 \gbk等之间进行相互转换。常见乱码错误,多是由于打开解码方式与文件编码方式不同造成的。

尚存疑问!!!

http://blog.csdn.net/xfyangle/article/details/60969522

转载于:https://www.cnblogs.com/ghming/p/8449613.html

python3 中bytes与str类型相关推荐

  1. python2 和 python3中bytes和str的数据类型以及p32和u32

    python3区分bytes 和string这两个数据类型 而python2是没有bytes类型的,是和str混用的 对于同一个地址序列,在python3中用str表示和用bytes,输出的样子会不一 ...

  2. 浅析Python中bytes和str区别

    本博转载自:Chown-Jane-Y的浅析Python3中的bytes和str类型 Python 3最重要的新特性之一是对字符串和二进制数据流做了明确的区分.文本总是Unicode,由str类型表示, ...

  3. 浅析Python3中的bytes和str类型

    Python 3最重要的新特性之一是对字符串和二进制数据流做了明确的区分.文本总是Unicode,由str类型表示,二进制数据则由bytes类型表示.Python 3不会以任意隐式的方式混用str和b ...

  4. 浅析Python3中的bytes和str类型(转载)

    目录 编码发展的历史 bytes和str之间的异同 Python 3最重要的新特性之一是对字符串和二进制数据流做了明确的区分.文本总是Unicode,由str类型表示,二进制数据则由bytes类型表示 ...

  5. Python学习,python3中的bytes和str类型

    Python 3最重要的新特性之一是对字符串和二进制数据流做了明确的区分.文本总是Unicode,由str类型表示,二进制数据则由bytes类型表示.Python 3不会以任意隐式的方式混用str和b ...

  6. Python3中的bytes和str类型

    字符串str,二进制字符bytes.Python 3不会以任意隐式的方式混用str和bytes,你不能拼接字符串和字节流,也无法在字节流里搜索字符串. 内置函数bytes()可以将字符串str类型转换 ...

  7. python中bytes_Python3中的bytes和str类型

    Python 3最重要的新特性之一是对字符串和二进制数据流做了明确的区分.文本总是Unicode,由str类型表示,二进制数据则由bytes类型表示.Python 3不会以任意隐式的方式混用str和b ...

  8. Python中bytes和str区别详细介绍

    Python 3最重要的新特性之一是对字符串和二进制数据流做了明确的区分.文本总是Unicode,由str类型表示,二进制数据则由bytes类型表示.Python 3不会以任意隐式的方式混用str和b ...

  9. Python3中的可迭代类型

    在Python中,有很多常见的可迭代类型(Iterable),可以通过isinstance()函数来验证该类型是否为可迭代类型.具体代码如下: from collections import Iter ...

最新文章

  1. html 注册插件,HTML 插件
  2. linux常见分区格式,linux 分区格式
  3. VS2008 正式版 下载+ KEY 注册码
  4. erlang的dict源码解析(2)
  5. python32什么意思_“python2”和“python3”有什么区别?
  6. centos7 安装nginx报错./configure: error: the HTTP rewrite module requires the PCRE library
  7. javascript DOM对象转jquery对象
  8. 419.甲板上的战舰
  9. mysql archive分区_MYSQL-分区表
  10. 使用vscode如何建立vue模板
  11. 闲谈一下,ES3、ES4、ES5、ES6 分别是什么
  12. 万网域名注册、域名解析与备案流程
  13. python sep参数_Python中带有print()函数的sep参数
  14. 前端 day02 CSS
  15. redhat安装配置Apache服务
  16. 高仿网易评论列表效果之界面分析
  17. Android仿微信群聊头像合成
  18. 123720服务器网站,123720a.com
  19. 【Log】(二)Java 中的日志框架 JCL、SLF
  20. 电脑操作最忌讳的十八个小动作

热门文章

  1. IOS和Android测试分别有什么侧重点?
  2. oracle巡检项,Oracle数据库巡检参考项
  3. gitee项目能用SVN拉取吗_基于SpringBoot的车牌识别系统(附项目地址)
  4. HTTP和RPC的区别?
  5. 最终,我还是放弃了字节50W开发offer,选择了测试开发……
  6. c语言给定一个单链表输入k,C语言实现单链表(不带头结点)的基本操作
  7. 快速排序实现(附原理参考资料和代码实现关键点描述)
  8. pyspider all 只启动了_Python 爬虫:Pyspider 安装与测试
  9. c语言文件替换字符串,C语言替换字符串
  10. Boost Graph