对python3新增的byte类型详解


Posted in Python onDecember 04, 2018

在python2中字节类型同字符类型区分不大,但是在python3中最重要的特性是对文本和二进制数据做了更加清晰的区分,文本总是Unicode,由字符类型表示,而二进制数据则由byte类型表示,python3不会以任意隐式方式混用字节型和字符型,也因此在python3中不能拼接字符串和字节包(python2中可以,会自动进行转换),也不能在字节包中搜索字符串,也不能将字符串传入参数为字节包的函数。

需要注意的是,在网络数据传输过程中,python2可以通过字符串(string)方式传输,但是python3只能通过二进制(bytes)方式来传输,因此要对传输文本进行转换。

对python3新增的byte类型详解

例如下面的例子:

>>>'你好'.encode('utf-8')

b'\xe4\xbd\xa0\xe5\xa5\xbd'

>>> b'\xe4\xbd\xa0\xe5\xa5\xbd'.decode('utf-8')

'你好'

 >>>'你好'.encode('utf-8').decode('utf-8')
'你好'

其中

1.encode()和decode()方法中默认了编码为utf-8,但是为了避免错误,最好将编码加上。

2.encode()出来的结果的“b”代表二进制(binary)

以上这篇对python3新增的byte类型详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
pyramid配置session的方法教程
Nov 27 Python
使用Python判断IP地址合法性的方法实例
Mar 13 Python
在CentOS上配置Nginx+Gunicorn+Python+Flask环境的教程
Jun 07 Python
python使用 HTMLTestRunner.py生成测试报告
Oct 20 Python
tensorflow构建BP神经网络的方法
Mar 12 Python
Python中利用xpath解析HTML的方法
May 14 Python
基于python3 OpenCV3实现静态图片人脸识别
May 25 Python
Python文件循环写入行时防止覆盖的解决方法
Nov 09 Python
python 视频逐帧保存为图片的完整实例
Dec 10 Python
Python中Selenium库使用教程详解
Jul 23 Python
Python排序函数的使用方法详解
Dec 11 Python
微软开源最强Python自动化神器Playwright(不用写一行代码)
Jan 05 Python
对Python3中bytes和HexStr之间的转换详解
Dec 04 #Python
python 实现数字字符串左侧补零的方法
Dec 04 #Python
Python发送邮件功能示例【使用QQ邮箱】
Dec 04 #Python
python无限生成不重复(字母,数字,字符)组合的方法
Dec 04 #Python
uwsgi+nginx部署Django项目操作示例
Dec 04 #Python
解决python中无法自动补全代码的问题
Dec 04 #Python
Django框架实现的简单分页功能示例
Dec 04 #Python
You might like
PHP 地址栏信息的获取代码
2009/01/07 PHP
PHP echo,print,printf,sprintf函数之间的区别与用法详解
2013/11/27 PHP
PHP实用函数分享之去除多余的0
2015/02/06 PHP
验证token、回复图文\文本、推送消息的实用微信类php代码
2016/06/28 PHP
php表单加入Token防止重复提交的方法分析
2016/10/10 PHP
wordpress自定义标签云与随机获取标签的方法详解
2019/03/22 PHP
Laravel 创建指定表 migrate的例子
2019/10/09 PHP
Laravel 5.5 异常处理 & 错误日志的解决
2019/10/17 PHP
javascript 函数式编程
2007/08/16 Javascript
javascript数组使用调用方法汇总
2007/12/08 Javascript
用正则表达式 动态创建/增加css style script 兼容IE firefox
2009/03/10 Javascript
JavaScript极简入门教程(三):数组
2014/10/25 Javascript
前端必备神器 Snap.svg 弹动效果
2014/11/10 Javascript
JavaScript中的bold()方法使用详解
2015/06/08 Javascript
javascript给span标签赋值的方法
2015/11/26 Javascript
ES6中的数组扩展方法
2016/08/26 Javascript
JS实现的几个常用算法
2016/11/12 Javascript
使用bootstraptable插件实现表格记录的查询、分页、排序操作
2017/08/06 Javascript
微信小程序自定义组件
2017/08/16 Javascript
微信小程序自定义底部弹出框
2020/11/16 Javascript
微信小程序rich-text富文本用法实例分析
2019/05/20 Javascript
在Express中提供静态文件的实现方法
2019/10/17 Javascript
vue项目打包为APP,静态资源正常显示,但API请求不到数据的操作
2020/09/12 Javascript
[55:16]Mski vs VGJ.S Supermajor小组赛C组 BO3 第二场 6.3
2018/06/04 DOTA
Python处理文本文件中控制字符的方法
2017/02/07 Python
使用Python制作简单的小程序IP查看器功能
2019/04/16 Python
Python Django框架url反向解析实现动态生成对应的url链接示例
2019/10/18 Python
使用pandas库对csv文件进行筛选保存
2020/05/25 Python
python反编译教程之2048小游戏实例
2021/03/03 Python
CSS3截取字符串实例代码【推荐】
2018/06/07 HTML / CSS
数以千计的折扣工业产品:ESE Direct
2018/05/20 全球购物
RUIFIER官网:英国奢侈高级珠宝品牌
2020/06/12 全球购物
C# Debug和Testing相关面试题
2015/10/25 面试题
保护校园环境倡议书
2015/04/28 职场文书
为什么MySQL选择Repeatable Read作为默认隔离级别
2021/07/26 MySQL
Ajax异步刷新功能及简单案例
2021/11/20 Javascript