對Golang import 導(dǎo)入包語法詳解
package 的導(dǎo)入語法
寫 Go 代碼的時經(jīng)常用到 import 這個命令用來導(dǎo)入包,參考如下:
import( "fmt" )
然后在代碼里面可以通過如下的方式調(diào)用:
fmt.Println( "我愛北京天安門" )
fmt 是 Go 的標(biāo)準(zhǔn)庫,它其實(shí)是去 GOROOT 下去加載該模塊,當(dāng)然 Go 的 import 還支持如下兩種方式來加載自己寫的模塊:
相對路徑
import "./model" // 當(dāng)前文件同一目錄的 model 目錄,但是不建議這種方式 import
絕對路徑
import "shorturl/model" // 加載 GOPATH/src/shorturl/model 模塊
package 的導(dǎo)入的特殊用法
上面展示了一些 import 常用的幾種方式,但是還有一些特殊的 import ,讓很多新手很費(fèi)解,下面是三種導(dǎo)入包的使用方法。
點(diǎn)操作
有時候會看到如下的方式導(dǎo)入包:
import( . "fmt" )
這個點(diǎn)操作的含義就是這個包導(dǎo)入之后在你調(diào)用這個包的函數(shù)時,你可以省略前綴的包名,也就是前面你調(diào)用的:
fmt.Println( "我愛北京天安門" )
可以省略的寫成:
Println( "我愛北京天安門" )
別名操作
別名操作顧名思義可以把包命名成另一個用起來容易記憶的名字:
import( f "fmt" )
別名操作調(diào)用包函數(shù)時前綴變成了重命名的前綴,即:
f.Println( "我愛北京天安門" )
下劃線操作
這個操作經(jīng)常是讓很多人費(fèi)解的一個操作符,請看下面這個 import
import ( “database/sql” _ “github.com/ziutek/mymysql/godrv” )
下滑線 “_” 操作其實(shí)只是引入該包。當(dāng)導(dǎo)入一個包時,它所有的 init() 函數(shù)就會被執(zhí)行,但有些時候并非真的需要使用這些包,僅僅是希望它的 init() 函數(shù)被執(zhí)行而已。這個時候就可以使用 “_” 操作引用該包了。即使用 “_” 操作引用包是無法通過包名來調(diào)用包中的導(dǎo)出函數(shù),而是只是為了簡單的調(diào)用其 init() 函數(shù)。
以上這篇對Golang import 導(dǎo)入包語法詳解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
go實(shí)現(xiàn)整型的二進(jìn)制轉(zhuǎn)化的方法
這篇文章主要介紹了go實(shí)現(xiàn)整型的二進(jìn)制轉(zhuǎn)化的方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值 ,需要的朋友可以參考下2019-07-07
看看你的Go應(yīng)用是否用了正確CPU核數(shù)
這篇文章主要為大家介紹了Go應(yīng)用正確的CPU核數(shù)分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-06-06
Go單元測試對數(shù)據(jù)庫CRUD進(jìn)行Mock測試
這篇文章主要為大家介紹了Go單元測試對數(shù)據(jù)庫CRUD進(jìn)行Mock測試的示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06
go微服務(wù)PolarisMesh源碼解析服務(wù)端啟動流程
這篇文章主要為大家介紹了go微服務(wù)PolarisMesh源碼解析服務(wù)端啟動流程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-01-01
源碼解析gtoken替換jwt實(shí)現(xiàn)sso登錄
這篇文章主要為大家介紹了源碼解析gtoken替換jwt實(shí)現(xiàn)sso登錄的示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06

