在go里,import是很常用的一个命令,import用来导入包。然后我们就可以使用这个包的函数。fmt是go里的标准库,我们以fmt包举一个例子,文件名为main.go如下:
import “fmt” func main() { fmt.Println(“hello world!”) }
上边的代码首先去GOROOT目录下加载fmt包,然后在main函数里调用fmt包的Println函数来打印。
除了这种导入,还可以别名的方式来导入一个包,例子如下:
import print “fmt” func main() { print.Println(“hello world!”) }
上边的代码给fmt包起了一个别名,我们直接用print来替代fmt就行了,这在大型项目的时候很有用,比如我们用LOG来替代我们实际上使用的log包,当我们更换其他包的时候仅仅把import LOG后边的包名字更换就可以了,而不必在每一个调用的地方都更换。
除此之外,我们还可以以点方式来导入包,这种情况的含义就是这个包导入之后在你调用这个包的函数时,你可以省略前缀的包名。例子如下:
import . “fmt” func main() { Println(“hello world!”) }
上边的代码用点来替代包名,但是这样做会污染当前的命名空间,最好不要这么做。
我们还可以以下划线来导入一个包,下划线导入经常让很多人感到费解。下划线其实是引入该包,而不直接使用包里面的函数,仅仅调用了该包里面的init函数。