python -- 模块 struct

文档地址 -- https://docs.python.org/3/library/struct.html

import struct
  本机高低端内存地址  sys.byteorder : 'little'

format>>>

FormatC TypePython typeStandard sizeNotes
xpad byteno value  
ccharbytes of length 11 
bsigned charinteger1(1),(3)
Bunsignedcharinteger1(3)
?_Boolbool1(1)
hshortinteger2(3)
Hunsignedshortinteger2(3)
iintinteger4(3)
Iunsignedintinteger4(3)
llonginteger4(3)
Lunsignedlonginteger4(3)
qlong longinteger8(2), (3)
Qunsignedlonglonginteger8(2), (3)
nssize_tinteger (4)
Nsize_tinteger (4)
e(7)float2(5)
ffloatfloat4(5)
ddoublefloat8(5)
schar[]bytes  
pchar[]bytes  
Pvoid *integer (6)
samples>>>
        >>> from struct import *
        >>> pack('llll', 1, 2, 3, 4)
        b'\x01\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00'
        >>> pack('hhhh', 1, 2, 3, 4)
        b'\x01\x00\x02\x00\x03\x00\x04\x00'
        >>> unpack('llll', b'\x01\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00')
        (1, 2, 3, 4)
        >>> unpack('llll', b'\x01\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x02\x00\x00')
        (1, 2, 3, 2199023255556)

        >>> pack('ci', b'*', 0x1314520)
        b'*\x00\x00\x00 E1\x01'
        >>> pack('ic',  0x1314520, b'*')
        b' E1\x01*'
        >>> calcsize('h')
        2
        >>> calcsize('i')
        4
        >>> calcsize('l')
        8
        >>> calcsize('hhl')
        16
        >>> calcsize('lhh')
        12



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值