英文:
go - creating dictionary with values as list
问题
我可以帮你翻译代码部分。以下是你想要翻译的内容:
我想在Go语言中创建一个字典,但其值包含列表。
dict := map[string][]string{
"A": []string{"1", "2"},
"B": []string{"3", "4"},
}
我们可以这样在Go语言中创建相同的字典。
英文:
I want to create dict in go language, but its value contains lists
dict= {
"A" : ["1", "2"],
"B" : ["3", "4"]
}
How can we create the same in go?
答案1
得分: 6
你可以创建一个字符串到字符串切片的映射:
func main() {
m := make(map[string][]string)
// m中的每个字符串都映射到一个字符串切片
m["A"] = []string{"1", "2"}
m["B"] = []string{"3", "4"}
fmt.Println(m["A"])
// 向特定键的列表中添加元素
m["A"] = append(m["A"], "10")
// 类似地,可以创建一个新的键
m["C"] = append(m["C"], "100")
fmt.Printf("%+v\n", m)
fmt.Printf("m[\"C\"] = %#v\n", m["C"]) // m["C"] = []string{"100"}
}
这段代码创建了一个名为m
的映射,其中每个字符串键都映射到一个字符串切片。你可以使用make
函数创建一个空的映射,然后使用索引操作符[]
来访问和修改映射中的值。通过使用append
函数,你可以向特定键的切片中添加元素。在这个例子中,我们向键"A"
的切片中添加了一个新元素"10"
,并创建了一个新的键"C"
,并将"100"
添加到它的切片中。最后,我们使用fmt.Printf
函数打印出整个映射m
的内容,并打印出键"C"
对应的切片。
英文:
You can create a map of string to slice of strings:
func main() {
m := make(map[string][]string)
// Each string in the m maps to a string slice
m["A"] = []string{"1", "2"}
m["B"] = []string{"3", "4"}
fmt.Println(m["A"])
// Adding to the list of a particular key
m["A"] = append(m["A"], "10")
// Creating a new key can be done similarly
m["C"] = append(m["C"], "100")
fmt.Printf("%+v\n", m)
fmt.Printf("m[\"C\"] = %#v\n", m["C"]) // m["C"] = []string{"100"}
}
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论