在golang中相当于itemgetter

时间:2017-03-11 21:15:39

标签: python go

我正在将一个程序从python转换为golang,我有这一行获取嵌套列表中的第一个值:
x_values = map(operator.itemgetter(0), self.coords)
此命令将[[1,2],[2,3],[7,4]]转为[1,2,7]

是否有相同的内容?

1 个答案:

答案 0 :(得分:2)

Go中的等价物将是for循环:

package main

import (
    "fmt"
)

func main() {
    a := make([][]int, 3)
    a[0] = []int{1, 2}
    a[1] = []int{2, 3}
    a[2] = []int{7, 4}

    b := make([]int, len(a))
    for i, v := range a {
        if len(v) > 0 {
            b[i] = v[0]
        }
    }
    fmt.Println(b)
}

https://play.golang.org/p/pNz8nQu20D