如何将列中的整个列表转换为字符串以传递给API?

时间:2019-01-17 00:10:09

标签: python-3.x pandas dataframe api-design

我需要将逗号分隔的字符串传递到api中。

当前df如下所示:

id      tags
1       ['dc','independent_press','exclusive_variants','marvel']

找到here标签的API文档说我需要传递这样的字符串:

'comics,marvel,dc,batman'

如何将tags列中的列表转换为字符串,以便df如下所示:

id      tags
1       'comics,marvel,dc,batman'

我想像这样将这个字符串传递到api中:

for index, row in df.iterrows():
            params = {
                'id': row['id'],
                'tags':row['tag'], 
                }
            r = requests.post(url, data=params, headers=headers)
            print(r)

我尝试过这样的字符串替换:

df.tags.str.replace('[',"'")

但得到了结果:

0   NaN

编辑:

字典中的数据帧头:

{'Email': {0: 'test@test.com'},
 'subcategory': {0: 'comics'},
 'category': {0: 'comic'},
 'id': {0: '1'},
 'is_new': {0: 1},
 'tag': {0: 'dc, independent_press, exclusive_varients, marvel'}}

1 个答案:

答案 0 :(得分:2)

标签似乎只是list中的str,因此可以达到目的:

for index, row in df.iterrows():
    params = {
        'id': row['id'],
        'tags': ','.join(row['tags']), 
    }
    print(params)

    r = requests.post(url, data=params, headers=headers)
    print(r)