用定界符分割十六进制值的字符串

时间:2018-12-14 09:17:19

标签: python string python-3.x split delimiter

我有一个十六进制值的字符串:-

ffffe7ba2cffffe7c52cffffe7c22cffffe7c12cffffe7c82cffffe7c62cffffe7b52cffffe7a02c

我想使用定界符值"2c"分割此字符串。

我尝试使用.split(0x2c).split("2c").split(b'\x2c'),但似乎都无效。

有什么建议吗?

谢谢。

3 个答案:

答案 0 :(得分:1)

您使用的是哪个Python版本?

在Python 3.7中,以下代码似乎可以正常工作:

tmp = "ffffe7ba2cffffe7c52cffffe7c22cffffe7c12cffffe7c82cffffe7c62cffffe7b52cffffe7a02c"
tmp.split("2c")

Out[37]: 
['ffffe7ba',
 'ffffe7c5',
 'ffffe7c2',
 'ffffe7c1',
 'ffffe7c8',
 'ffffe7c6',
 'ffffe7b5',
 'ffffe7a0',
 '']

或者您想要的输出是什么?

答案 1 :(得分:1)

对我来说很好。

In [1]: s = "ffffe7ba2cffffe7c52cffffe7c22cffffe7c12cffffe7c82cffffe7c62cffffe7b52cffffe7a02c"
In [2]: s.split("2c")
Out[2]: 
['ffffe7ba',
 'ffffe7c5',
 'ffffe7c2',
 'ffffe7c1',
 'ffffe7c8',
 'ffffe7c6',
 'ffffe7b5',
 'ffffe7a0',
 '']

答案 2 :(得分:1)

我想您需要这样的东西:

myHex = 0xffffe7ba2cffffe7c52cffffe7c22cffffe7c12cffffe7c82cffffe7c62cffffe7b52cffffe7a02c
myStringForHex = str(hex(myHex))[2:]
myStringForHex.split('2c')

对应的输出是:

['ffffe7ba',
 'ffffe7c5',
 'ffffe7c2',
 'ffffe7c1',
 'ffffe7c8',
 'ffffe7c6',
 'ffffe7b5',
 'ffffe7a0',
 '']