Golang import

本文详细介绍了Golang中import语句的三种特殊用法:点操作、别名操作和_操作,并解释了它们的具体应用场景及作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Golang import 特殊用法

     Golang包的导入语法
     在写Go代码的时候经常用到import这个命令用来导入包文件,看到的方式参考如下:
     import(
         "fmt"
     )
    然后在代码里面可以通过如下的方式调用
    fmt.Println("hello world")
   
    上面这个fmt是Go语言的标准库,他其实是去GOROOT下去加载该模块,当然Go的import还支持如下两种方式来加载自己写的模块:
    相对路径     import   "./model"  //当前文件同一目录的model目录,但是不建议这种方式import
    绝对路径    import   "shorturl/model"  //加载GOPATH/src/shorturl/model模块

    上面展示了一些import常用的几种方式,但是还有一些特殊的import,让很多新手很费解,下面是三种导入包的使用方法。


      1. 点操作   有时候会看到如下的方式导入包     import( . “fmt” ) 
          这个点操作的含义就是这个包导入之后在你调用这个包的函数时,你可以省略前缀的包名,也就是前面你调用的fmt.Println(“hello world”)  可以省略的写成Println(“hello world”). 

          可以近似理解为把fmt所有方法引入到当前文件.如果这么看就相当于fmt这个包的所有方法都属于当前包,所以可以省略包名.
      2. 别名操作   别名操作顾名思义可以把包命名成另一个用起来容易记忆的名字
           import( f “fmt” )   别名操作调用包函数时前缀变成了重命名的前缀,即f.Println(“hello world”). 

          这个比较好理解,相当于python中的as关键字.
      3.  _操作   这个操作经常是让很多人费解的一个操作符,请看下面这个import
          import ( “database/sql” _ “github.com/ziutek/mymysql/godrv” ) 

        _操作其实只是引入该包。当导入一个包时,它所有的init()函数就会被执行,但有些时候并非真的需要使用这些包,仅仅是希望它的init()函数被执行而已。这个时候就可以使用_操作引用该包了。即使用_操作引用包是无法通过包名来调用包中的导出函数,而是只是为了简单的调用其init函数(). 

         可以把"_"理解为丢弃,就是把要导入包的可见变量和函数全部丢弃,只执行默认的init()方法


     本文转自:http://studygolang.com/articles/4580

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值