GO代码中遍历slice,寻找某个slice,统计个数。
type Element interface{} func main() { a := []int{1, 2, 3, 4, 1} for _, i := range a { fmt.Println(i) } for i := 0; i < len(a); i++ { //fmt.Println(i) } fmt.Println(index0(a, 3)) fmt.Println(index0([]string{"a", "b", "c", "d", "e"}, "e")) sort.Ints(a) //排序 fmt.Println(a) } // func index0(a Element, i interface{}) int { if b, ok := a.([]int); ok { if c, ok1 := i.(int); ok1 { for indexC, v := range b { if v == c { return indexC } } } } if b, ok := a.([]string); ok { if c, ok1 := i.(string); ok1 { for indexC, v := range b { if v == c { return indexC } } } } return -1 }
可以看到上述的GO语言中slice没有寻找某个元素的方法。我自定义一个方法
下面的python的代码非常简洁了
a=[1,2,3,4,1] for b in a : print(b) i=0 while i <len(a): print(a[i]) i=i+1 #print( sorted(a)) 方式一排序 a.sort() print(a) print( a.index(3)) a.count(1)