struct.pack, struct.unpack详解

  1. struct.pack(format,v1,v2,...)

    返回v1, v2, ...打包成format格式的bytes对象(即buffer)

    • format

    • v1, v2, ...

    • 例:

      • format: 16sH,16s1H, 16s H, 16s 1H
      • v1: 长16的char数组
      • v2: 一个无符号短整型
      >>> struct.pack('16sH', b'bbb', 1)
      b'bbb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00'
      >>> struct.pack('16s1H', b'bbb', 1)
      b'bbb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00'
      >>> struct.pack('16s 1H', b'bbb', 1)
      b'bbb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00'
      
  2. struct.unpack(format, buffer)

    unpack就是解包

posted @ 2020-02-11 15:08  twfb  阅读(3993)  评论(0编辑  收藏  举报