python之 字节串和字节数组

  • 字节串(也叫字节序列) bytes

作用:
        存储以字节为单位的数据
        字节串是不可变的字节序列
字节:
    字节是0-255之间的整数,字节是数据传输和数据存储的基本单位
    (例如中国移动的流量....文件大小等)


创建空字符串的字面值
    b''
    b""
    b""""""
    b''''''
创建非空的字节串的字面值
    b'ABCD'
    b"ABCD"
    b'\x41\x42'

字节串的构造函数:
    bytes()  #生成一个字的字节串,等同于'b'
    bytes(整形可迭代对象)  用可迭代对象创建一个字节串
    bytes(整数n) 生成n个值为0的字节串
    bytes(字节串,encoding = 'utf-8')
    用字符串的转换编码生成一个字节串

示例:
    b = bytes()
    b = bytes(range(65,90)) #b'ABCDEFGHIJKLMNOPQRSTUVWXY'
    b = bytes(10)
    b = bytes('hello','utf-8')
    b = bytes('中文','utf-8')

bytes 的运算
    与其他序列的运算的规则完全相同
     + += * *=
     < <= > >= == !=
    in  / not in   #整数或字节串
    索引和切片   #得到的索引值为数字

len(x),max(x),min(x),sum(x),any(x),all(x)


bytes和str的区别
    bytes 存储字节(0-255)
    str 存储字符(用来表示文字信息,值为0-65536或更大)

bytes 和str 转换
        编码(encode)
    str----------> bytes
        b = s.encode(encoding='utf-8')

        解码(decode)
    bytes-------->str
        s = b.decode(encoding='utf-8')

序列:
    str(不可变)

    list(可变)----->tuple(不可变)

    bytearray(可变)----->bytes(不可变)

  • 字节数组 bytearry


    可变的字节序列

    构造函数:
        bytearry()  #生成一个字的字节串,等同于'b'
        bytearry(整形可迭代对象)  用可迭代对象创建一个字节串
        bytearry(整数n) 生成n个值为0的字节串
        bytearry(字节串,encoding = 'utf-8')
        用字符串的转换编码生成一个字节串
    运算和字节串完全相同
        * *= + +=
        < <= > >= == !=
        in / not in
        索引 index /切片 slice
        字节数组支持索引和切片赋值(重要)
    bytearry的方法:
        文档见:
        bytearray 的方法:
          方法                                     说明
        B.clear()                     清空
        B.append(n)                   追加一个字节(n为0-255的整数)
        B.remove(value)               删除第一个出现的字节,如果没有出现,则产生ValueError错误
        B.reverse()                   字节的顺序进行反转
        B.decode(encoding='utf-8')  
        B.find(sub[, start[, end]])     

猜你喜欢

转载自blog.csdn.net/zhangshuaijun123/article/details/81910057