你可以使用Go语言创建一个以元组为值的地图(map)。

huangapple go评论87阅读模式
英文:

How might I create a map in Go with tuples as values?

问题

你可以使用Go语言中的map来创建一个以字符串为键,以包含一个或多个元素的元组为值的映射。元组中的元素应该是电话号码的字符串。类似于你在Python代码中的示例:

chicas := map[string][]string{
    "Alexia":   []string{"600000000"},
    "Paola":    []string{"600000008", "600000007", "600000005", "600000001", "600000004", "600000000"},
    "Samanta":  []string{"600000009"},
    "Wendy":    []string{"600000005"},
}

在Go中,你可以使用切片(slice)来表示元组,因为Go中没有内置的元组类型。切片是一个可变长度的序列,可以容纳多个元素。在上面的示例中,每个值都是一个字符串切片,表示电话号码的字符串。

请注意,Go语言中的map是可变的,而不是不可变的。如果你希望使chicas变量成为不可变的,你可以使用const关键字将其声明为常量。但是,这意味着你将无法修改chicas的值。

希望这可以帮助到你!如果你有任何其他问题,请随时问。

英文:

How might I create a map that has strings as keys and tuples ,of one or many elements, as values?
The elements of the tuples are to be strings of phone numbers.
Much like what I have in the following Python code:

chicas = { "Alexia":("600000000"), 
"Paola":("600000008", "600000007", "600000005", "600000001", "600000004", "600000000"),
"Samanta":("600000009"),
"Wendy":("600000005")}

The variable chicas is meant to be immutable.
I've started with:

type chica struct {
  name string
  number tuple
}

but I get from Go: undefined: tuple.

答案1

得分: 1

如果你的值的大小是固定的,你可以创建一个像你现在有的类型,或者只使用一个map[string]string

例如:

type MyTuple struct {
   key string
   value string
}

func main() {
  var x := make(map[string]MyTuple)
  x["foo"] = MyTuple{ key: "bar", value: "baz" }
}

另外,你也可以使用map[string][]string来创建一个字符串到字符串切片的映射,[]MyTuple来创建一个字符串到MyTuple切片的映射,或者map[string]map[string]string来创建一个包含映射的字符串映射。

英文:

If the size of your values are fixed, you can make a type like you have, or just use a map[string]string

Eg:

type MyTuple struct {
   key string
   value string
}

func main() {
  var x := make(map[string]MyTuple)
  x[“foo”] = MyTuple{ key: “bar”, value: “baz” }
}

Alternatively, you can do map[string][]string to make a map of strings to slices of strings, []MyTuple, or map[string]map[string]string to make a map of strings containing maps.

huangapple
  • 本文由 发表于 2022年2月23日 23:00:49
  • 转载请务必保留本文链接:https://go.coder-hub.com/71239305.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定