[英]How can i create the json object on python?
我試圖創建一個json對象,但我在某處犯了一個錯誤。 我在CSV文件上獲得了一些數據(中心是字符串,lat和lng是浮點數)。
我的代碼:
data = []
data.append({
'id': 'id',
'is_city': false,
'name': center,
'county': center,
'cluster': i,
'cluster2': i,
'avaible': true,
'is_deleted': false,
'coordinates': ('{%s,%s}' %(lat,lng))
})
json_data = json.dumps(data)
print json_data
它與此相符:
[{
"county": "County",
"is_city": false,
"is_deleted": false,
"name": "name",
"cluster": 99,
"cluster2": 99,
"id": "id",
"coordinates": "{41.0063945,28.9048234}",
"avaible": true
}]
那是我想要的:
{
"id" : "id",
"is_city" : false,
"name" : "name",
"county" : "county",
"cluster" : 99,
"cluster2" : 99,
"coordinates" : [
41.0870185,
29.0235126
],
"available" : true,
"isDeleted" : false,
}
您可以使用pprint在python上進行漂亮的打印,但它應該應用於對象而不是字符串。 在您的情況下,json_data是一個表示JSON對象的字符串,因此您需要在嘗試pprint時將其加載回對象(或者使用數據變量本身,因為它在您的示例中已包含此JSON對象)
例如嘗試運行:pprint.pprint(json.loads(json_data))
您將coordinates
定義為指定格式的字符串。 json
無法將其編碼為列表; 當你想要另一個時,你會說一件事。
同樣,如果您不希望頂級字典成為列表中的唯一元素,請不要將其定義為列表中的元素。
data = {
'id': 'id',
'is_city': false,
'name': name,
'county': county,
'cluster': i,
'cluster2': i,
'available': true,
'is_deleted': false,
'coordinates': [lat, lng]
}
我不知道你是如何定義center
,或者你怎么預期它的值'name'
和值'county'
基本上是同一時間。 我聲明了兩個新變量來保存這些值; 您需要調整代碼以處理此細節。 我還修改了“可用”中的拼寫錯誤,顯然你希望Python以某種方式處理這個問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.