2016-10-31 80 views
0

我在Python中發送json post請求,我得到兩個返回的字典值,但它們存儲在一個對象中。在python中的變量中存儲json post請求

這是我有:

import json 
import requests 

def call(): 
    pay = {'token' : "4593543"} 
    r = requests.post('https://www.hackerrank.com/challenges', params=pay) 

我在r對象獲得兩個值店。

'{"needle":"qvsmbjkc", "haystack": ["pgunkqay","qvsmbjkc","qgswmzin","arwokfjm","taskzcup","yjvcabgr","xcrsldof","tecipvzf","cjtahlqb","pqgykrcz","ufyjrpad","hqezmcwl","fsyimbxr","tosqznha","lzujpvob","mbfsikde","nqvpjbhi","uwsqybai","ozetipqw","imancdqr"]}' 

草堆值但它們都在r對象。我怎樣才能將它們分解成不同的變量?

+0

你的問題被嚴重formatetd。 [編輯](http://stackoverflow.com/posts/40338796/edit)該問題,選擇其中的代碼,點擊'{}'按鈕將代碼格式化爲代碼。使用文本框下面的預覽來查看它的外觀。 – zvone

+0

您應該調用'r.json()'方法來提取JSON對象。 –

+0

謝謝,所以我將針串存儲在一個變量中,但是當我將數組存儲在變量中時,它將其存儲爲整個字符串而不是字符串索引。有沒有辦法解決這個問題? – Jack

回答

1

requests作爲JSON的方法來直接讀取JSON響應到蟒蛇結構:

r = requests.post('https://www.hackerrank.com/challenges', params=pay) 
response = r.json() 
print(response['needle']) 
+0

謝謝,所以我將針串存儲在一個變量中,但是當我將數組存儲在一個變量中時,它將其存儲爲整個字符串而不是字符串索引。有沒有辦法解決這個問題? – Jack

+0

@Jack:你試過了嗎?不,''response ['haystack']'是一個字符串列表。 – Daniel

+0

它的工作,謝謝 – Jack