2015-01-04 33 views
-3

我有一些數據是這樣的:如何將字符串類型爲字符串的字典列表轉換爲列表?

r = [{ 
    "id": "fhjgjj", 
    "OneId": "sjgkhkshgkfh", 
    "name": "test_one", 
    "value": "/xyz", 
    "pdiff": null 
}] 

是, 'R' 是JSON格式。

我曾經作爲unicode更早(這是如何從API獲取數據)。所以我做了

u1 = r.encode(「utf-8」)將其轉換爲字符串。 (在此處獲得的Unicode到字符串)

但是,如果您看到,r(上)是詞典的列表。我該如何將它轉換爲列表?

+2

名單什麼?你期望的結果是什麼? – Doorknob

+0

Python沒有'null'關鍵字。也許這是JSON或JavaScript? –

+0

我想'r'被識別爲詞典列表。 – user2921139

回答

0

使用json模塊。

r= """[{ 
    "id": "fhjgjj", 
    "OneId": "sjgkhkshgkfh", 
    "name": "test_one", 
    "value": "/xyz", 
    "pdiff": null 
}]""" 

import json 

r= json.loads(r) 
+0

該死的..爲什麼我沒有把它從Unicode直接轉換成Python格式呢..謝謝Rawing。 – user2921139

2

如果您有包含文本字符串,那麼你有JSON編碼的數據。使用json module它進行解碼,以字典的Python列表:

import json 

r_decoded = json.loads(r) 

這使用json.loads() function(負載字符串)從字符串加載。如果你的數據從一個類似文件的對象(如來自urllib2模塊HTTP響應)來了,然後用json.load() function直接加載數據,無需你手動讀取數據:

r_decoded = json.load(file_or_response_or_similar_object)