1. 程式人生 > >Go語言學習-import

Go語言學習-import

mysq ase path 很多 命名 目錄 imp 標準 記憶

import
我們在寫Go代碼的時候經常用到import這個命令用來導入包文件,而我們經常看到的方式參考如下:
import(
"fmt"
)
然後我們代碼裏面可以通過如下的方式調用
fmt.Println("hello world")
上面這個fmt是Go語言的標準庫,其實是去goroot下去加載該模塊,當然Go的import還支持如下兩種方式來加載自己
寫的模塊:

1. 相對路徑
import “./model” //當前文件同一目錄的model目錄,但是不建議這種方式來import
2. 絕對路徑
import “shorturl/model” //加載gopath/src/shorturl/model模塊
上面展示了一些import常用的幾種方式,但是還有一些特殊的import,讓很多新手很費解,下面我們來一一講解一下
到底是怎麽一回事
1. 點操作
我們有時候會看到如下的方式導入包
import(
. "fmt"
)
這個點操作的含義就是這個包導入之後在你調用這個包的函數時,你可以省略前綴的包名,也就是前面你調
用的fmt.Println("hello world")可以省略的寫成Println("hello world")
2. 別名操作
別名操作顧名思義我們可以把包命名成另一個我們用起來容易記憶的名字
import(
f "fmt"
)
別名操作的話調用包函數時前綴變成了我們的前綴,即f.Println("hello world")
3. _操作
這個操作經常是讓很多人費解的一個操作符,請看下面這個import
import (
"database/sql"
_ "github.com/ziutek/mymysql/godrv"
)
_操作其實是引入該包,而不直接使用包裏面的函數,而是調用了該包裏面的init函數。

Go語言學習-import