tags = df['listcol'].apply(pd.Series)
tags = tags.rename(columns=lambda x: 'listcol_' + str(x))
df = pd.concat([df[:], tags[:]], axis=1)
How to explode a list inside a Dataframe cell into separate rows