У меня есть 3
вложенные списки:
STEP = [['S', '1', 'B', '3'], ['S', '3', 'B', '11'], ['S', '5', 'B', '12'], ['S', '4', 'B', '13'], ['S', '2', 'B', '14']]
TRANSITION = [['T', '2', 'B', '4'], ['T', '7', 'B', '4'], ['T', '3', 'S', '4'], ['T', '5', 'S', '5'], ['T', '1', 'S', '2'], ['T', '8', 'S', '2'], ['T', '6', 'S', '1'], ['T', '9', 'S', '2'], ['T', '4', 'S', '1'], ['T', '10', 'S', '1']]
BRANCH = [['B', '3', 'T', '1'], ['B', '3', 'T', '7'], ['B', '4', 'S', '3'], ['B', '11', 'T', '3'], ['B', '11', 'T', '5'], ['B', '12', 'T', '6'], ['B', '12', 'T', '8'], ['B', '13', 'T', '4'], ['B', '13', 'T', '9'], ['B', '14', 'T', '2'], ['B', '14', 'T', '10']]
Каждый элемент содержит информацию в таком виде:
# Example
STEP[0] = ['S', '1', 'B', '3']
Где:
- 'S' - это
STEP
тип - '1' - это
STEP
номер ID - 'B' - это связанный
BRANCH
тип - «3» - это связанный
BRANCH
номер идентификатора
Начиная с STEP
все данные связаны, поэтому, используя связанную ссылку, вы можете найти следующий элемент и следующий до другого STEP
достигнуто
Вот некоторые параметры данных:
STEPS
подключены к одному BRANCHES
BRANCHES
подключены к одному или нескольким TRANSITIONS
TRANSITIONS
могут быть подключены к одному BRANCH
или STEP
Данные BRANCH
могут иметь вилку, в которой один BRANCH
id имеет одну или несколько опций для TRANSITIONS
.
Я хотел бы объединить эти вилки с одним и тем же идентификатором `BRANCH ', ie:
# BRANCH[0] and BRANCH[1] both have an id of '3'
# therefore, need to be combined
BRANCH[0] = ['B', '3', 'T', ['1', '7']]
Это должно сделать, чтобы создать новый список, который объединяет все «как» BRANCHES
.
Моя попытка до сих пор (не очень далеко):
for i in B:
if i[1] == B['all except current i'][1]
# append the branch id and the two transitions