package 的导入语法
写 Go 代码的时经常用到 import 这个命令用来导入包,参考如下:
1
2
3
|
import( "fmt" ) |
然后在代码里面可以通过如下的方式调用:
1
|
fmt.Println( "我爱北京天安门" ) |
fmt 是 Go 的标准库,它其实是去 GOROOT 下去加载该模块,当然 Go 的 import 还支持如下两种方式来加载自己写的模块:
相对路径
1
|
import "./model" // 当前文件同一目录的 model 目录,但是不建议这种方式 import |
绝对路径
1
|
import "shorturl/model" // 加载 GOPATH/src/shorturl/model 模块 |
package 的导入的特殊用法
上面展示了一些 import 常用的几种方式,但是还有一些特殊的 import ,让很多新手很费解,下面是三种导入包的使用方法。
点操作
有时候会看到如下的方式导入包:
1
2
3
|
import( . "fmt" ) |
这个点操作的含义就是这个包导入之后在你调用这个包的函数时,你可以省略前缀的包名,也就是前面你调用的:
1
|
fmt.Println( "我爱北京天安门" ) |
可以省略的写成:
1
|
Println( "我爱北京天安门" ) |
别名操作
别名操作顾名思义可以把包命名成另一个用起来容易记忆的名字:
1
2
3
|
import( f "fmt" ) |
别名操作调用包函数时前缀变成了重命名的前缀,即:
1
|
f.Println( "我爱北京天安门" ) |
下划线操作
这个操作经常是让很多人费解的一个操作符,请看下面这个 import
1
2
3
4
|
import ( “database/sql” _ “github.com/ziutek/mymysql/godrv” ) |
下滑线 “_” 操作其实只是引入该包。当导入一个包时,它所有的 init() 函数就会被执行,但有些时候并非真的需要使用这些包,仅仅是希望它的 init() 函数被执行而已。这个时候就可以使用 “_” 操作引用该包了。即使用 “_” 操作引用包是无法通过包名来调用包中的导出函数,而是只是为了简单的调用其 init() 函数。
以上这篇对Golang import 导入包语法详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/u010649766/article/details/79458004