Python3引入两个新类型:
In [1]: bytes()
Out[1]: b''
In [2]: bytes(10)
Out[2]: b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
In [3]: bytes([0x61,99,0b11100000])
Out[3]: b'ac\xe0'
In [5]: bytes("abc",encoding="utf-8")
Out[5]: b'abc'
In [6]: b1=b"abc"
In [7]: b2=bytes(b1)
In [8]: b2
Out[8]: b'abc'
除了格式化方法(format和format_map)和几个处理unicode数据的方法(包括casefold、idecimal、isdentifier、isnumeric、isprintable和encode)之外,str类型的其他方法都支持bytes和bytearray
In [8]: a=bytes.fromhex("61 62 63 6a 6b")
In [9]: a
Out[9]: b'abcjk'
In [10]: b="abc".encode().hex()
In [11]: b
Out[11]: '616263
In [6]: a = int.from_bytes(b"abc", "big")
In [7]: hex(a)
Out[7]: '0x616263'
In [12]: b"abcd"[1]
Out[12]: 98
In [2]: bytearray()
Out[2]: bytearray(b'')
In [3]: bytearray(10)
Out[3]: bytearray(b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00')
In [4]: bytearray([98,0x61,0b01100001])
Out[4]: bytearray(b'baa'
In [7]: bytearray("ABCD",encoding="UTF-8")
Out[7]: bytearray(b'ABCD')
In [8]: bytearray(b"abc")
Out[8]: bytearray(b'abc')
In [9]: bytearray(b"abcdefk").replace(b"f",b"m")
Out[9]: bytearray(b'abcdemk')
In [10]: bytearray(b"abcdefk").find(b"a")
Out[10]: 0
In [11]: bytearray.fromhex("61 62 6364 65")
Out[11]: bytearray(b'abcde')
In [12]: bytearray("abc".encode()).hex()
Out[12]: '616263'
In [13]: bytearray(b"abcde")[1]
Out[13]: 98
In [14]: b=bytearray()
In [15]: b.append(97)
In [16]: b
Out[16]: bytearray(b'a')
In [17]: b.insert(1,99)
In [18]: b
Out[18]: bytearray(b'ac')
In [19]: b.extend([65,66,67])
In [20]: b
Out[20]: bytearray(b'acABC')
In [21]: b.pop()
Out[21]: 67
In [29]: b
Out[29]: bytearray(b'acA')
In [30]: b.clear()
In [31]: b
Out[31]: bytearray(b'')
In [27]: b
Out[27]: bytearray(b'Aca')
In [28]: b.reverse()
In [29]: b
Out[29]: bytearray(b'acA')
更多详细方法请参考官方文档bytes