2012-03-19 82 views
4

我無法找到如何蟒蛇列表轉換的元素是這樣的:如何將列表(列表)列表轉換爲Python中的json數組?

[[["thisid", 24024502], ["points", [[["lat", 37.8732041], ["lon", -122.2562601]], [["lat", 37.8729153], ["lon", -122.2561566]]]], ["name", "Latimer Hall"]] 

到元素的JSON數組這樣的:

{"thisid":24024502, "points": [{"lat": 37.8732041, "lon": -122.2562601}, {"lat":37.8729153, "lon":-122.2561566}], "name":"Latimer Hall"} 

基本上,我嘗試轉換列表具有內部結構的列表到json中的對應列表。

平原json.dumps(MYLIST)剛剛返回原始列表(我猜,這是公元前這是一個有效的JSON對象,以及...)

你可能有任何建議,非常感謝!

+3

?這將更容易使用,並且還可以序列化到您要查找的JSON中。 – abesto 2012-03-19 12:05:51

+0

現在使用字典。謝謝! – 2012-03-20 10:11:27

回答

4

原始代碼中的parens不平衡。如果我在一開始刪除一個括號:

>>> a = [["thisid", 24024502], ["points", [[["lat", 37.8732041], ["lon", -122.2562601]], [["lat", 37.8729153], ["lon", -122.2561566]]]], ["name", "Latimer Hall"]] 
>>> b = dict(a) 
>>> for i, l in enumerate(b['points']): 
...  b['points'][i] = dict(l) 
... 
>>> b 
{'points': [{'lat': 37.8732041, 'lon': -122.2562601}, {'lat': 37.8729153, 'lon': -122.2561566}], 'thisid': 24024502, 'name': 'Latimer Hall'} 
>>> 

那麼你爲什麼不使用字典原始數據序列化JSON到

+0

非常感謝您的建議! – 2012-03-20 10:09:28