我有一个PDU编码短信的GSM日期/时间戳,它的格式是这样的
\ X90,\ X21,\ X51,\ X91,\ X40,\ X33
格式yy,mm,dd,hh,mm,ss
我已经将它们从二进制文件读入字节数组.我想将它们转换为字符串,但没有做任何解码我想最终得到一个包含902151914033的字符串.然后我需要反转字符串中的每2个字符.
谁能给我一些指示?非常感谢
这应该让你开始:
>>> s = b'\x90\x21\x51\x91\x40\x33'
>>> lst = [hex(z)[2:] for z in s]
>>> lst
['90', '21', '51', '91', '40', '33']
>>> string = ''.join(hex(z)[3:1:-1] for z in s)
>>> string
'091215190433'
Run Code Online (Sandbox Code Playgroud)
小智 5
要转换为十六进制:
hexdata = ''.join('%02x' % ord(byte) for byte in bindata)
要反转所有其他十六进制字符(如果我正确理解):
hexdata = ''.join(('%02x' % ord(byte))[::-1] for byte in bindata)
| 归档时间: |
|
| 查看次数: |
10229 次 |
| 最近记录: |