相关文章推荐
失眠的烤红薯  ·  python qt textBrowser ...·  4 周前    · 
帅气的领带  ·  【Pyspark ...·  1 周前    · 
近视的橙子  ·  python ...·  1 周前    · 
眉毛粗的电梯  ·  python ...·  昨天    · 
力能扛鼎的生姜  ·  Kubernetes ...·  1 年前    · 

从一个API调用中,我返回一个字典,看起来像。

{'detectedLanguage': {'language': 'en', 'score': 1.0},'translations': [{'text': 'ハローワールド。これは楽しいです', 'to': 'ja'}, {'text': '世界您好。这很有趣', 'to': 'zh-Hans'}, {'text': '전 세계 여러분 안녕하세요. 이것은 재미', 'to': 'ko'}]}

我知道我可以像这样循环。

for i in response[0]['translations']:
    print(i)

其中返回这三个字典。

{'text': 'ハローワールド。これは楽しいです', 'to': 'ja'}
{'text': '世界您好。这很有趣', 'to': 'zh-Hans'}
{'text': '전 세계 여러분 안녕하세요. 이것은 재미', 'to': 'ko'}

然而,我不确定如何将它们纳入数据框架。有没有一个使用json.normalize的解决方案?

字典列表的长度会有所不同,但我想做的是通过 "翻译 "键进行迭代,以创建一个数据框架,看起来像。

Language     Text
ja           'ハローワールド。これは楽しいです'
zh-Hans      '世界您好。这很有趣'
ko           '전 세계 여러분 안녕하세요. 이것은 재미'

语言='to',文本='text'。

python
json
dictionary
dcrowley01
dcrowley01
发布于 2021-10-07
1 个回答
not_speshal
not_speshal
发布于 2021-10-07
已采纳
0 人赞同
>>> pd.DataFrame(response["translations"])[["to", "text"]].rename(columns={"to": "Language", "text": "Text"})