字节(Byte)是计算机的最小存储单位,一个字节由8个bit(位)构成,每个bit可以为0或1两种状态,因此一个字节可以有2的8次方=256种状态,可表达整数0~255。
两个字节(16个bit)有65536种状态,可以表示0~65535,字节越多可表达的数字越大。
所以说计算机的存储器中只有数字,即字节。
1024Byte=1KB
1024KB=1MB
1024MB=1GB
1024GB=1TB
计算机中每个字符用一个数字来表示,具体哪个字符使用哪个数字表示需要有一套统一的标准(字符集)。
最早的字符集编码是ASCII码表,其中只有英文字母和标点以及阿拉伯数字字符。
计算机传入国内后,国家制定了简体中文字符集GB2312,后又扩展了一次称为GBK,繁体中文字符集BIG5。
中文字符数量较多,一个字节肯定不够,所以在中文字符集中用两个字节编码一个字符。
每个国家都制定自己的字符集,如果一个字符串不知道它采用什么字符集,就无法正常显示出来(可能会显示乱码)。
如果一个字符串中同时出现多个国家的文字,可以使用UTF-8字符集,这个字符集几乎编码了全世界发达国家的文字。
python程序默认使用的字符集是UTF-8
字节串也是用单引号或双引号括起来,但是要在引号前面加字母b或B。
a=b'hello'
a=b"hello"
a=B'''hello
你好'''
a=b"""
hello
你好
"""
a=bytes() #生成一个空的字节串 等同于 a=b''
a=bytes([1,2,3,4,5,6]) #用列表或元组等可迭代对象初始化一个字节串,数值不能超过255。
a=bytes(整数n) #生成 n 个值为零的字节串。
连接字节串 +,+=
重复产生字节串 * ,*=
字节串比较 < ,<= ,>, >= ,== ,!=
字节串是否存在或不存在某个值 in 或 not in ,只能使用0~255的整型数进行操作
索引 取字节串中第n个元素 a[n] 得到的值是一个int型
切片 取字节串中n~m序列 a[n:m] 得到的值是一个bytes型
b = b'abc' + b'123' 则 b=b'abc123'
b += b'ABC' 则 b=b'abc123ABC'
b'ABD' > b'ABC' 为 True
b = b'ABCD'
65 in b 为 True
b'A' in b 为 True
b[0] 为 'A'
b[0:4] 为 'ABCD'
b=bytes('字符串', encoding='utf-8')
或者
b = s.encode('utf-8')
s = b.decode('utf-8')
字节数字也叫“可变字节串”,与字节串的区别在于字节数组诞生后它的值可以被改变。
生成一个空的字节数组 b=bytearray()
利用字节串生成字节数组 b=bytearray(b'hello')
利用可迭代对象生成字节数组 b=bytearray([1,2,3,4,5]) ,数值不能超过255。
bytearray(整数n) 生成 n 个值为零的字节数组。
bytearray(字符串, encoding='utf-8') 用字符串的转换编码生成一个字节数组。
+,+=,* ,*= ,<, <= ,> ,>= ,==, != ,in , not in ,索引,切片。
clear() 清空字节数组
append(n) 追加一个字节(n为0-255的整数)
remove(value) 删除第一个值为value的字节,如果没有出现,则产生ValueError错误
reverse() 字节的顺序进行反转
decode(encoding='utf-8') # 字节串转为字节数组
find(sub[, start[, end]]) 在字节数组中查找某个值,返回位置。
1、输出26个大写字母的ASCII码
2、将一个字符串中大写字母变小写,小写字母变成大写。
咨询电话:0731-88711630 微信号:hn887700 谢老师 QQ:359689361
长沙网学教育科技有限公司 网站备案号:湘ICP备15000537号