将看起来像字典列表的字符串转换为实际列表



我在数据框架中有一列,看起来像字典列表,但它们的类型是字符串。但是,它们不是JSON格式的(属性没有用双引号括起来)

dfdisplay:

<表类> 坳 tbody><<tr>({name =约翰,用户id = john doe,年龄= 23},{name =玛丽,用户id =玛丽·史密斯,年龄= 21}]

使用自定义函数:

f = lambda x: [dict([z.split('=') for z in y.split(', ')]) for y in x.strip('[{}] ').split('}, {')]
df['new'] = df['col'].apply(f)

列表理解选项:

df['new'] = [[dict([z.split('=') for z in y.split(', ')]) for y in x.strip('[{}] ').split('}, {')] for x in df['col']]

最新更新