2024-09-28 15:35:34 发布
网友
我有一个字节数组b_alen(b_a)返回24。但是我想使b_a的长度为16而不丢失数据。有什么办法吗
b_a
len(b_a)
您还可以将bytearray分割成像字符串一样的片段。所以len(mybytearray[0:16])
len(mybytearray[0:16])
但这不会奏效。因为在不同的编码集(utf-8、ascii…)中,字符占据不同数量的数字。 这就是为什么我们需要知道你用什么来编码你的字节数组
它可能仍然适用于您:
mybyte = bytearray("uğurcanveözlemkardeşler", 'utf-8') mybyte16 = mybyte[0:16] mybyte16
这取决于你想如何做到这一点。如果它的长度是24,那么显然它有24个元素。如果要将其设置为16,则必须删除8个元素
您可以通过以下方式完成此操作:
切片:
b_a = b_a[:16]
或
b_a = b_a[8:]
或任何组合:
b_a = b_a[2:18]
或者您可以.pop()项:
.pop()
b_a.pop(). # do this 8 times
b_a.pop(some_index). # do this 8 times
您还可以将bytearray分割成像字符串一样的片段。所以
len(mybytearray[0:16])
但这不会奏效。因为在不同的编码集(utf-8、ascii…)中,字符占据不同数量的数字。 这就是为什么我们需要知道你用什么来编码你的字节数组
它可能仍然适用于您:
这取决于你想如何做到这一点。如果它的长度是24,那么显然它有24个元素。如果要将其设置为16,则必须删除8个元素
您可以通过以下方式完成此操作:
切片:
或
或任何组合:
或者您可以
.pop()
项:或
相关问题 更多 >
编程相关推荐