如何用Go创建像词典一样的Python?

inn*_*tic 3 go

我正在尝试制作类似python的字典.我试过了:

var chunk = map[string]string{
    "code": "5000",
    "error": err,
}

var payload = map[string]string{
    "type": "response",
    "error": chunk,
}
Run Code Online (Sandbox Code Playgroud)

我也试过了

    var payload = map[string]string{
    "type": "response",
    "error": {
        "code": "5000",
        "error": err,
    },
}
Run Code Online (Sandbox Code Playgroud)

sad*_*lil 11

Go是一种静态类型语言.所以你不能创建动态地图.您定义了地图,map[string]string因此您的地图键和值必须是字符串.

您可以使用map[string]interface{}动态地使用地图.但无论何时使用您需要的值,您都需要将其转换为所需类型.

例如

chunk := map[string]interface{}{
    "code": "5000",
    "error": err,
    "a": 5,
    "b": 7,
}

intvalue := chunk["a"].(int)
Run Code Online (Sandbox Code Playgroud)