Python: назначить один элемент из списка элементам в другом списке - PullRequest
0 голосов
/ 10 марта 2020

я получил два списка:

L_1 = ['Value1', 'Value2', 'Value3', 'Value 4']
L_2 = [['Value1', 'Value1_01'], ['', 'Value1_02'], ['', 'Value1_03'], 
       ['Value2', 'Value2_01'], ['', 'Value2_02'], 
       ['Value3', 'Value3_01'], ['', 'Value3_02'], ['', 'Value3_03'], ['', 'Value3_04']
       ['Value4', 'Value4_01'], ['', 'Value4_02']]

из этого мне нужен список, который присваивает элементы Value1-Value4 их «младшим сестрам». должно выглядеть так:

L1 =   ['Value1', 'Value2', 'Value3', 'Value 4']
L_res = [['Value1_01', 'Value1_02', 'Value1_03'], 
         ['Value2_01', 'Value2_02'], 
         ['Value3_01', 'Value3_02', 'Value3_03', 'Value3_04']
         ['Value4_01', 'Value4_02']

мне нужно посчитать, где L2[i][0] == '' or L2[i][0] == L1[i], а затем дать мне значения от L2[i][1] и поставить его на L_res

Надеюсь, кто-то из вас понимает проблема и есть идея, чтобы решить проблему.

Я действительно ценю это

1 Ответ

1 голос
/ 10 марта 2020

Это должно сработать:

L_res = []
for i in L_2:
   if i[0]:
       L_res.append([i[1]])
   else:
       L_res[-1].append(i[1])

L_res
# [['Value1_01', 'Value1_02', 'Value1_03'],
#  ['Value2_01', 'Value2_02'],
#  ['Value3_01', 'Value3_02', 'Value3_03', 'Value3_04'],
#  ['Value4_01', 'Value4_02']]
...