2012-06-11 148 views
35
import json 

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

這是我的JSON數組,但我想將水果串中的所有值轉換爲Python列表。這樣做的正確方法是什麼?將JSON數組轉換爲Python列表

+2

你是什麼意思? 'data ['fruits']'將成爲一個列表 – jdi

+3

你有一個包含_Array_的JSON _Object_。 JSON數組與Python的'list'是同源的。 JSON _Object_與Python'dict'同源。從技術上講,你有一個'dict'包含一個鍵值對,其中的值是一個字符串'list'。 –

回答

62
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']將是一個列表

+1

哦,對。我認爲只會從對象中獲取單個字符串,而不是數組。謝謝! – user1447941

+0

@ user1447941:沒問題。解碼器將把所有json對象翻譯成它們的python內置對象對象。 – jdi

+0

你是不是指'print(data ['fruits'])',因爲你的代碼只適用於()我的數據:)( –

10

Tested on Ideone.


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