go-spew golang最强大的调试助手,没有之一

go内置的fmt.sprintf已经很强大了,但是和spew比起来还是相形见绌,这里来一个例子.

import (
        "fmt"

        "github.com/davecgh/go-spew/spew"
)

func main() {
        scs := spew.ConfigState{Indent: "\t"}

        // Output using the ConfigState instance.
        v := map[string]int{"one": 1}
        fmt.Printf("v: %v\n", v)
        scs.Dump(v)
}

对比一下,看看输出有多美:

v: map[one:1]
(map[string]int) (len=1) {
        (string) (len=3) "one": (int) 1
}