I have looked at other explanations here and none quite fit. The unpacking code works, but its very slow. is there a better method that i can use with python. I can't see how i can get a list comprehension to work here. Any suggestions would be very helpful.
import pandas as pd
df = pd.DataFrame(data={'a':['A1 + A3','B4 + A4 + D2','C2 + D2'],'b':['L700 + 
          L800','G700','L2600 + L900'],'c':['6','7','8']})
df
    a   b   c
0   A1 + A3 L700 + L800     6
1   B4 + A4 + D2    G700    7
2   C2 + D2 L2600 + L900    8
df2 = pd.DataFrame(columns = df.columns)
for index, row in df.iterrows():
    userLabel = row.loc['a']
    cells = userLabel.split('+') 
    ID = row.loc['b']
    tech = ID.split('+')     
    i = 0
    for cell in cells:
        cell = cell.strip()
        row.loc['a'] = cell
        if i > len(tech)-1:
            i = i-1
        row.loc['b'] = tech[i]
        df2.loc[len(df2)] = row
        i += 1
df2
    a   b   c
0   A1  L700    6
1   A3  L800    6
2   B4  G700    7
3   A4  G700    7
4   D2  G700    7
5   C2  L2600   8
6   D2  L900    8
 
    