猿问

Go中的嵌套数据结构-等同于Python

我可以很容易地在Python中创建此数据结构:


data = {'Locations': [],

 'Dates': [],

 'Properties': [{'key': 'data1', 'value': 'data2'}],

 'Category': 'all'}

然后可以轻松地将其编组为Python中的JSON。例如


print json.dumps(data)


{"Category": "all", "Dates": [], "Locations": [], "Properties": [{"value": "data2", "key": "data1"}]}

但是,我正在努力尝试创建相同的结构,然后在Go中将其转换为JSON。Go看起来非常有前途,而且正是我创建跨平台应用程序所需要的东西,但是,这东西似乎非常困难。


这是我尝试过的方法,但是我无法使结构包含应该包围properties元素的方括号。


import (

"fmt"

"encoding/json"

)


func main() {


data := map[string]interface{}{"Offset": "0", "Properties": map[string]string{"value": "data2", "key": "data1"}, "Category": "all", "Locations": []string{}, "Dates": []string{} }

    data_json, _ := json.Marshal(data)

fmt.Println(string(data_json))

}

哪个输出:


{"Category":"all","Dates":[],"Locations":[],"Offset":"0","Properties":{"key":"data1","value":"data2"}}

这是一个演示:http : //play.golang.org/p/49Kytg6v_C


慕娘9325324
浏览 266回答 2
2回答
随时随地看视频慕课网APP

相关分类

Go
我要回答