90
import json

array = '{"fruits": ["apple", "banana", "orange"]}'
data  = json.loads(array)

那是我的 JSON 数组,但我想将 fruits 字符串中的所有值转换为 Python 列表。这样做的正确方法是什么?

4

3 回答 3

141
import json

array = '{"fruits": ["apple", "banana", "orange"]}'
data  = json.loads(array)
print data['fruits']
# the print displays:
# [u'apple', u'banana', u'orange']

你有你需要的一切。data将是一个字典,data['fruits']将是一个列表

于 2012-06-11T01:09:18.680 回答
15

在 Ideone 上测试。


import json
array = '{"fruits": ["apple", "banana", "orange"]}'
data  = json.loads(array)
fruits_list = data['fruits']
print fruits_list
于 2012-06-11T01:10:56.983 回答
0

data将返回一个列表的字符串表示形式,但它实际上仍然是一个字符串。只需检查datawith的类型type(data)。这意味着如果您尝试对列表的此字符串表示形式使用索引data['fruits'][0],它将返回“[”,因为它是第一个字符data['fruits']

您可以json.loads(data['fruits'])将其转换回 Python 列表,以便与常规列表索引进行交互。还有其他 2 种方法可以将其转换回此处建议的 Python 列表

于 2020-12-03T02:51:05.747 回答