对python3新增的byte类型详解

Dulcea ·
更新时间:2024-11-10
· 740 次阅读

在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类型详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持软件开发网。

您可能感兴趣的文章:python2与python3中关于对NaN类型数据的判断和转换方法Python3基础之基本数据类型概述Python3中bytes类型转换为str类型Python3中内置类型bytes和str用法及byte和string之间各种编码转换 问题对Python3中dict.keys()转换成list类型的方法详解Python3中使用urllib的方法详解(header,代理,超时,认证,异常处理)python3 与python2 异常处理的区别与联系Python线程创建和终止实例代码python修改注册表终止360进程实例Python中用Ctrl+C终止多线程程序的问题解决Python3.4学习笔记之类型判断,异常处理,终止程序操作小结



byte Python3 Python

需要 登录 后方可回复, 如果你还没有账号请 注册新账号