2016-04-21 166 views
0

鑑於下面的JSON結構,我想抓取一個項目的所有數據,然後隨機抽取其中一個值爲link從鍵值列表創建列表

使用random - 我熟悉從列表中抓取隨機值。我被卡住的地方是如何從列表中創建一個列表。查看JSON下面的代碼。

Item0: 
    0 
    caption: "caption 0" 
    link: "www.item0.com" 
    type: "type0" 

    1 
    caption: "caption 1" 
    link: "www.item1.com" 
    type: "type1" 

PYTHON:

chosen_item = "Item0" 
firebase = firebase.FirebaseApplication('https://app.firebaseio.com') 
result = firebase.get(chosen_item, None) 

if result: 
    for i in result: 
    result_link = (i['link']) 
    print result_link 

if-statement循環通過並且在條目作爲unicode類型返回link的。我該如何製作一份清單? (result_link

回答

2
chosen_item = "Item0" 
firebase = firebase.FirebaseApplication('https://app.firebaseio.com') 
result = firebase.get(chosen_item, None) 

if result: 
    links = [] 
    for i in result: 
    links.append(i['link']) 
1
result_links = [x for x in result['link']] 

如果您需要使用索引號,試試這個:

result_links = [] 
i = 0 
for item in results: 
    result_links.append(item[i]['link']) 
    json_index +=1 
+0

感謝...唯一的問題是我猜的火力地堡數組編號是適用的 - 我已經得到這個錯誤'TypeError:列表索引必須是整數,而不是str' – SamYoungNY

+0

是的,在條目開始的數字是不可忽略的。你需要訪問它的結果[i] ['link] – Chris

+0

由於某些原因,當我使用'result_links = []'解決方案(需要通過'i'訪問...我只收到第一個鏈接,但多次。 – SamYoungNY