Python 字符串(string)和字节型(bytes)
字符串平常用的比较多,该篇主要记录一下Python处理字节型,顺便对基础知识做一下回顾和小结。
Python3最重要的新特性之一是对字符串和二进制数据流做了明确的区分:
- 文本总是
Unicode
,由str类型
表示 - 二进制数据则由
bytes类型
表示 - Python3不会以任意隐式的方式
混用str和bytes
你不能拼接字符串和字节流,也无法在字节流里搜索字符串(反之亦然),也不能将字符串传入参数为字节流的函数(反之亦然)
1. 编码常识
比特、字节、字符
-
计算机存储信息的最小单位,称之为
位(bit)
,音译为比特,二进制的一个“0”或一个“1”叫一位。 -
计算机存储容量基本单位是
字节(Byte)
,音译为拜特,8个二进制位组成1个字节。最早的计算机在设计时采用8个比特(bit)作为一个字节(byte)
所以,一个字节能表示的最大的整数就是255(二进制11111111=十进制255),如果要表示更大的整数,就必须用更多的字节。 -
计算机存储容量大小以字节数来度量,1024进位制
1024B=1K(千)B
1024KB=1M(兆)B
1024MB=1G(吉)B
1024GB=1T(太)B -
字符是一种符号,同以上说的存储单位不是一回事