Разделение строки шестнадцатеричных значений с разделителем - PullRequest
0 голосов
/ 14 декабря 2018

У меня есть строка шестнадцатеричных значений: -

ffffe7ba2cffffe7c52cffffe7c22cffffe7c12cffffe7c82cffffe7c62cffffe7b52cffffe7a02c

Я хочу разбить эту строку, используя значение разделителя "2c".

Я пытался с .split(0x2c), .split("2c"), .split(b'\x2c'), но ни один из них не работает.

Есть предложения?

Спасибо.

Ответы [ 3 ]

0 голосов
/ 14 декабря 2018

У меня отлично работает.

In [1]: s = "ffffe7ba2cffffe7c52cffffe7c22cffffe7c12cffffe7c82cffffe7c62cffffe7b52cffffe7a02c"
In [2]: s.split("2c")
Out[2]: 
['ffffe7ba',
 'ffffe7c5',
 'ffffe7c2',
 'ffffe7c1',
 'ffffe7c8',
 'ffffe7c6',
 'ffffe7b5',
 'ffffe7a0',
 '']
0 голосов
/ 14 декабря 2018

Полагаю, вам нужно что-то вроде этого:

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

Соответствующий вывод:

['ffffe7ba',
 'ffffe7c5',
 'ffffe7c2',
 'ffffe7c1',
 'ffffe7c8',
 'ffffe7c6',
 'ffffe7b5',
 'ffffe7a0',
 '']
0 голосов
/ 14 декабря 2018

Какую версию Python вы используете?

В Python 3.7, кажется, работает следующий код:

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

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

Или каким будет ваш желаемый вывод?

...