Я пытаюсь извлечь шестнадцатеричное значение переменной длины из файла журнала BLF, начиная с индексации в позиции [7].Я могу успешно извлечь шестнадцатеричные значения переменной длины в списке.Проблема заключается в удалении запятых между шестнадцатеричными значениями из каждого извлеченного списка.
Ниже приведен файл BLF, из которого я извлекаю шестнадцатеричные значения переменной длины:
['Timestamp:', '1546626931.138813', 'ID:', '0764', 'S', 'DLC:', '8', '00', '00', '00', '00', '00', '00', '00', '00', 'Channel:', '0']
['Timestamp:', '1546626931.138954', 'ID:', '0365', 'S', 'DLC:', '8', '00', '00', '00', '80', 'db', '80', 'a2', '7f', 'Channel:', '1']
['Timestamp:', '1546626931.139053', 'ID:', '0765', 'S', 'DLC:', '6', 'ae', '05', '00', '00', '05', '00', 'Channel:', '1']
['Timestamp:', '1546626931.139697', 'ID:', '022a', 'S', 'DLC:', '4', '40', 'c0', '50', '6c', 'Channel:', '1']
.
.
.
.
Вывод, который я получаю в файле, выглядит следующим образом:
['00', '00', '00', '00', '00', '00', '00', '00']
['00', '00', '00', '80', 'db', '80', 'a2', '7f']
['ae', '05', '00', '00', '05', '00']
['40', 'c0', '50', '6c']
Но я хочу, как показано ниже: сначала удалить запятые из исходного списка amd, а затем преобразовать шестнадцатеричные значения, показанные ниже, в десятичное число:
['0000000000000000']
['00000080db80a27f']
['ae0500000500']
['40c0506c']
Мой код указан ниже:
import can
import csv
import datetime
# import timestamp as timestamp
filename = open('C:\\Users\\xyz\\Downloads\\BLF File\\hex_Decimal.csv', "w")
log1 = can.BLFReader('C:\\Users\\xyz\\Downloads\\BLF File\\test.blf')
#Extracting Hexadecimal and convert into decimal
for time in log1:
time = str(time).split()
data=str(time[7:(7 + int(time[6]))])
"".join(data)
print(data)
Я не могу удалить запятые из списка и преобразовать список шестнадцатеричных чисел в десятичные значения внутри списка.Любая помощь приветствуется.Спасибо!