以下是Python 3.3中的示例交互
>>> bArray = bytes(b'ABCDE')
>>> bArray
b'ABCDE'
>>> bArray[0]
65
>>> type(bArray[0])
<class 'int'>
>>> bArray[0:1]
b'A'
>>> type(bArray[0:1])
<class 'bytes'>
>>> struct.pack('B', bArray[1])
b'B'
>>> type(struct.pack('B', bArray[1]))
<class 'bytes'>
它表明索引一个bytes数组产生一个整数,而切片相同则返回一个bytes对象。
答案 0 :(得分:5)
警告虽然字符串对象是字符序列(由长度为1的字符串表示),但字节和字节对象是整数序列(0到255之间),表示单字节的ASCII值。这意味着对于字节或bytearray对象b,b [0]将是一个整数,而b [0:1]将是长度为1的字节或bytearray对象。字节对象的表示使用文字格式(b' ......')因为它通常比例如更有用bytes([50,19,100])。您始终可以使用list(b)将bytes对象转换为整数列表。
所以没有“字节”对象了。