我正在嘗試使用go的模板系統(tǒng)編寫一個像這樣的字符串:(p1,p2,p3),其中p1,p2,...來自程序中的數(shù)組。我的問題是如何為最后一個(或第一個)元素正確放置逗號。我的非工作版本輸出(p1,p2,p3,)如下所示:package mainimport "text/template"import "os"func main() { ip := []string{"p1", "p2", "p3"} temp := template.New("myTemplate") temp,_ = temp.Parse(paramList) temp.Execute(os.Stdout, ip)}const paramList = `{{ $i := . }}({{ range $i }}{{ . }}, {{end}})`到目前為止,我的最佳線索是在以下語句中的http://golang.org/pkg/text/template/中找到:如果“范圍”操作初始化變量,則將變量設(shè)置為迭代的連續(xù)元素。另外,“范圍”可以聲明兩個變量,以逗號分隔:$index, $element := pipeline在這種情況下,$ index和$ element分別設(shè)置為數(shù)組/切片索引或映射鍵和元素的連續(xù)值。請注意,如果只有一個變量,則會為其分配元素;否則,將為它分配元素。這與Go range子句中的約定相反。建議在哪里索引這表明可以在迭代中獲得索引,但我只是不知道聲明兩個變量的范圍是什么意思,以及這些變量在模板中應(yīng)聲明的位置。
- 1 回答
- 0 關(guān)注
- 339 瀏覽
添加回答
舉報
0/150
提交
取消