Go:import详解

1 常规

常用于导入GO的核心包

   import(
       "fmt"
   )
  //调用
  fmt.Println("hello world")

上面这个fmt是Go语言的标准库,他其实是去GOROOT下去加载该模块

2 路径

前面介绍Go如何import它的核心库,那么,在我们自己创建的项目,模块中的代码如何import其它模块呢?
我们可以通过路径的方式导入,包括相对路径与绝对路径

  //相对路径     
  import   "./test_model"  //当前文件同一目录的test_model目录,但是不建议这种方式import
  
  //绝对路径    
  import   "mygoproject/test_model"  //加载GOPATH/src/mygoproject/test_model模块   

  

3 点操作

在阅读开源项目时,有时候会看到如下的方式导入包

import . “fmt”

这个点操作的含义就是这个包导入之后在你调用这个包的函数时,你可以省略前缀的包名,也就是前面你调用的

  fmt.Println(“hello world”)  
  //可以省略的写成
  Println(“hello world”)

  

4 别名

同样在在阅读开源项目时,也会发现,以下的方式

  import( f “fmt” )   
  //别名操作调用包函数时前缀变成了重命名的前缀,即
  f.Println(“hello world”)

别名操作顾名思义可以把包命名成另一个自己绝对方便的名字

5 _ 操作

在阅读 开源项目MM-WIKI时,发现以下的import方式

  import (
      _ "github.com/go-sql-driver/mysql"
  ) 

_ 操作其实只是引入该包,只是使用该包的init函数,并不显示的使用该包的其他内容。注意:这种形式的import,当import时就执行了fmt包中的init函数,而不能够使用该包的其他函数。



原文地址:https://www.cnblogs.com/saryli/p/15166220.html