【问题标题】:How do I truncate/restrict/limit the length of bytearray in Python? [closed]如何在 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 个字节并丢弃其余字节?

提前致谢!

【问题讨论】:

  • “我只想要 bytearray 的前 25 个字节”:旧的 c[:25] 有什么问题?
  • 试试这个 c=c[:25]

标签: python arrays byte string-length


【解决方案1】:

字节数组是一个序列,所以你可以对它进行切片:

d = d[:50]

或者,如果性能至关重要并且字节数组通常会比您的限制短,则避免不必要的副本:

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

【讨论】:

    猜你喜欢
    • 2020-04-01
    • 2017-06-13
    • 2015-03-11
    • 2017-01-22
    • 1970-01-01
    • 2015-08-18
    • 1970-01-01
    • 2011-09-28
    • 1970-01-01
    相关资源
    最近更新 更多