Warm tip: This article is reproduced from serverfault.com, please click

arrays-如何在Python中截断/限制/限制字节数组的长度?

(arrays - How do I truncate/restrict/limit the length of bytearray in Python?)

发布于 2020-11-30 15:34:29

假设我有一个长度为50(50个字节)的字节数组,但是我只想要字节数组中的前25个字节。我怎么做?

例如:

c = bytearray(b'1703020030f19322e5cc9b9e56cb71d2ebcd888582913f7f13')

或者

d= bytearray(b'\x17\x03\x03\x000\xd9O\x8a\x08L\t\x05:\xf6\xa0\x0b\xc0\xb6\xcc\xf5\x1a\xc5S\xf9\x98\xf4\\gTf\xcco\xc7\x10\x16\x1f\xf5\xcd`\x9f=K.\x8aj\x0b]\x9eW\xd0\x04\x17\xcd')

len(c) = 50len(d) = 53

我如何提取其中的前50个字节并丢弃其余的字节?

提前致谢!

Questioner
G3guru
Viewed
0
SamR 2020-12-01 00:17:45

字节数组是一个序列,因此你可以对其进行切片:

d = d[:50]

或者,如果性能很关键,并且字节数组通常会比你的限制短,那么可以避免不必要的复制:

if len(d) > 50:
    d = d[:50]