我有这样的代码:
package main
import (
"text/template"
"os"
)
func main() {
type Map map[string]string
m := Map {
"a": "b",
"c": "d",
}
const temp = `{{range $key, $value := $}}key:{{$key}} value:{{$value}},{{end}}`
t := template.Must(template.New("example").Parse(temp))
t.Execute(os.Stdout, m)
}
Run Code Online (Sandbox Code Playgroud)
它会输出:
键:一个值:B,键:C值:d,
但我想是这样的:
键:一个值:B,键:C值:d
我并不需要最后一个逗号,如何删除它。我发现了一个解决方案,在这里循环数组:https://groups.google.com/d/msg/golang-nuts/XBScetK-guk/Bh7ZFz6R3wQJ,但我不能对地图获得指标。
该程序输出简单
1,4,2,
但我想打印
1,4,2。
如您所见,逗号在数组的每个项目之后打印。
package main
import "os"
import "text/template"
func main() {
params := map[string]interface{}{
"items": [3]int{1, 4, 2},
}
tpl := "{{range $i, $el := .items}}{{$el}},{{end}}"
lister, _ := template.New("foo").Parse(tpl)
lister.Execute(os.Stdout, params)
}
Run Code Online (Sandbox Code Playgroud)
有没有一种方法可以更改,{{range $i, $el := .items}}{{$el}},{{end}}并确保最后一项将打印“。”。代替 ”,”