使用Go包

Mor*_*a R 2 import packages go

我不确定如何调用Go包.例如,如果我想创建随机数,我应该导入"math/random",但它不仅仅是"math"库的一部分吗?那么为什么这段代码不起作用:

package main

import(
    "fmt"
    "math"
)

func main(){
    r := rand.New(rand.NewSource(99))
    fmt.Println(r)

}
Run Code Online (Sandbox Code Playgroud)

我的意思是,我不能直接通过简单地导入一个超类来直接访问随机函数(在这种情况下,只是数学"math"包)?

Arj*_*jan 6

多数民众赞成因为rand是一个单独的包,它是分层的math包math/rand,所以你必须专门导入它:

package main

import(
    "fmt"
    "math/rand"
)

func main(){
    r := rand.New(rand.NewSource(99))
    fmt.Println(r)

}
Run Code Online (Sandbox Code Playgroud)