寫 Go 代碼的時經常用到 import 這個命令用來導入包,參考如下:


import(
"fmt"
)

然后在代碼里面可以通過如下的方式調用:


fmt.P" />

對Golang import 導入包語法詳解

 更新時間:2019-09-09 09:01:41   作者:佚名   我要評論(0)

package 的導入語法
寫 Go 代碼的時經常用到 import 這個命令用來導入包,參考如下:


import(
"fmt"
)

然后在代碼里面可以通過如下的方式調用:


fmt.P

package 的導入語法

寫 Go 代碼的時經常用到 import 這個命令用來導入包,參考如下:

import(
  "fmt"
)

然后在代碼里面可以通過如下的方式調用:

fmt.Println( "我愛北京天安門" )

fmt 是 Go 的標準庫,它其實是去 GOROOT 下去加載該模塊,當然 Go 的 import 還支持如下兩種方式來加載自己寫的模塊:

相對路徑

import  "./model" // 當前文件同一目錄的 model 目錄,但是不建議這種方式 import

絕對路徑

import  "shorturl/model" // 加載 GOPATH/src/shorturl/model 模塊

package 的導入的特殊用法

上面展示了一些 import 常用的幾種方式,但是還有一些特殊的 import ,讓很多新手很費解,下面是三種導入包的使用方法。

點操作

有時候會看到如下的方式導入包:

import( 
  . "fmt" 
) 

這個點操作的含義就是這個包導入之后在你調用這個包的函數時,你可以省略前綴的包名,也就是前面你調用的:

fmt.Println( "我愛北京天安門" )

可以省略的寫成:

Println( "我愛北京天安門" )

別名操作

別名操作顧名思義可以把包命名成另一個用起來容易記憶的名字:

import( 
  f "fmt" 
)

別名操作調用包函數時前綴變成了重命名的前綴,即:

   f.Println( "我愛北京天安門" )

下劃線操作

這個操作經常是讓很多人費解的一個操作符,請看下面這個 import

import ( 
  “database/sql” 
  _ “github.com/ziutek/mymysql/godrv” 
) 

下滑線 “_” 操作其實只是引入該包。當導入一個包時,它所有的 init() 函數就會被執行,但有些時候并非真的需要使用這些包,僅僅是希望它的 init() 函數被執行而已。這個時候就可以使用 “_” 操作引用該包了。即使用 “_” 操作引用包是無法通過包名來調用包中的導出函數,而是只是為了簡單的調用其 init() 函數。

以上這篇對Golang import 導入包語法詳解就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

您可能感興趣的文章:

  • go各種import的使用方法講解
  • 詳解golang避免循環import問題(“import cycle not allowed”)
  • golang 之import和package的使用

相關文章

  • 對Golang import 導入包語法詳解

    對Golang import 導入包語法詳解

    package 的導入語法 寫 Go 代碼的時經常用到 import 這個命令用來導入包,參考如下: import( "fmt" ) 然后在代碼里面可以通過如下的方式調用: fmt.P
    2019-09-09
  • go 下載非標準庫包(部份包被墻了)到本地使用的方法

    go 下載非標準庫包(部份包被墻了)到本地使用的方法

    如下所示: import ( "golang.org/x/net/html" ) 在使用此包時,會導入失敗,因為這不是go標準庫中,但是由于域名被墻了所以翻墻可以下載此包,放入你的
    2019-09-09
  • goLang引入自定義包的方法

    goLang引入自定義包的方法

    看完golang的基本語法后,為了模塊化編程,試用了下golang的包管理,結果真踩了幾個坑,總結一下吧。 一. 設置$GOPATH環境變量 golang和C或php不一樣,不會自
    2019-09-09
  • go時間/時間戳操作大全(小結)

    go時間/時間戳操作大全(小結)

    基本操作 01: 獲取當前時間 dateTime := time.Now() fmt.Println(dateTime) 02: 獲取年 月 日 時 分 秒 納秒 year := time.Now().Year() //年 fmt.P
    2019-09-09
  • golang gorm中格式化時間問題詳解

    golang gorm中格式化時間問題詳解

    前言 最近在開發項目時遇到了發現一個問題, gorm雖然可以自動幫你維護 created_at、updated_at、deleted_at這些關鍵時間字段。但是其原理與弊端需要了解一
    2019-09-09
  • Golang TCP粘包拆包問題的解決方法

    Golang TCP粘包拆包問題的解決方法

    什么是粘包問題 最近在使用Golang編寫Socket層,發現有時候接收端會一次讀到多個數據包的問題。于是通過查閱資料,發現這個就是傳說中的TCP粘包問題。下面
    2019-09-09
  • 下載golang.org/x包的操作方法

    下載golang.org/x包的操作方法

    golang.org/x包放到了https://github.com/golang/text中,下載時需要先在本地建立golang.org/x的目錄后,再下載。 mkdir -p golang.org/x git clone https://
    2019-09-09
  • Golang 使用http Client下載文件的實現方法

    Golang 使用http Client下載文件的實現方法

    之前使用beego的http庫的時候,有的情況需要下載文件。beego是能實現,但就是有點問題:不支持回調,沒法顯示下載速度,這在日常開發中是不可忍受的。 看了下be
    2019-09-09
  • 基于Go和Gin的環境配置方法

    基于Go和Gin的環境配置方法

    1.官方下載Go版本,安裝相應平臺的程序。 2.配置Go的環境變量: GOROOT:GO安裝路徑,例如GOROOT = D:\Go GOPATH: 項目源碼所在目錄(例如GOPATH = E:\go),
    2019-09-09
  • golang 檢查網絡狀態是否正常的方法

    golang 檢查網絡狀態是否正常的方法

    如下所示: package main import ( "fmt" "os/exec" "time" ) func NetWorkStatus() bool { cmd := exec.Command("ping", "baidu.com", "-c", "1", "
    2019-09-09

最新評論

亿宝娱乐黑钱