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 导入包语法介绍 点 别名 下划线相关推荐

  1. 【Intellij IDEA教程】怎么自动清除无效的import导入包、清除无效的import导入包的快捷键

    [Intellij IDEA教程]怎么自动清除无效的import导入包.清除无效的import导入包的快捷键 通常在使用Intellij IDEA进行项目开发的时候 Intellij IDEA会自动帮 ...

  2. Golang中import 导入包的几种方式:点,别名与下划线

    在写Go代码的时候经常用到import这个命令用来导入包文件,看到的方式参考如下: import (// 多个"google.golang.org/grpc""imcs/ ...

  3. golang import中的.和_的使用,import的几种方式点,下划线,别名

    别看这个文章很短,解决的问题却很重要. . 是调用的时候省略包的前缀 _ 是指调用其init()函数 别名就是起个简单名字 func的大小写 同一个package里面 不同package里面 例如首字 ...

  4. python import变灰_python--pycharm中import导入包呈现灰色问题之解决~很实用

    将鼠标移动到灰色代码,点击出现提示"Unused import statement"表示import声明不可用, 左边同时出现黄色小灯泡,将鼠标移动至黄色小灯泡那里, 会出现向下箭 ...

  5. pycharm中import导入包呈现灰色问题

    将鼠标移动到那行代码,点击出现提示"Unused import statement"表示import声明不可用,左边同时出现黄色小灯泡,将鼠标移动至黄色小灯泡那里,会出现向下箭头, ...

  6. python怎么导入包-python怎样导入包

    python中的包即为模块,模块就是以.py类型结尾的python文件. 导入模块常用的方式是import model_name,或者用from..import model_name,下面分别说一下两 ...

  7. python怎么导入时间-Python的import导入与时间

    一.模块与包 模块,在Python可理解为对应于一个文件.在创建了一个脚本文件后,定义了某些函数和变量.你在其他需要这些功能的文件中,导入这模块,就可重用这些函数和变量.一般用module_name. ...

  8. import time python_Python的import导入与时间

    一.模块与包 模块,在Python可理解为对应于一个文件.在创建了一个脚本文件后,定义了某些函数和变量.你在其他需要这些功能的文件中,导入这模块,就可重用这些函数和变量.一般用module_name. ...

  9. python 导入包 作用域_Python 包、模块、函数、变量作用域

    Python 项目的组织结构 - 包 -- 模块 --- 类 ---- 函数.变量 Python是利用包和模块来组织一个项目的. 包: 包的物理表现是一个文件夹,但是一个文件夹却不一定是个包,要想让个 ...

最新文章

  1. 如何在WordPress中自定义PHP页面并操作数据库?
  2. SparkStreaming从Kafka读取数据两种方式
  3. golang 随机数 实现
  4. 腾讯牌番茄,新鲜上市!
  5. markdown的流程图实现和代码语法着色
  6. 第一次作业+105032014142
  7. Java Level 2 学习的八大名著
  8. 中央和省级产业政策匹配数据(含完整stata代码)
  9. 快来看!我把小时候最喜欢的连连看游戏源代码拿来了~
  10. 天蝎项目整机柜服务器解决方案,天蝎整机柜服务器标准符合性测试已启动
  11. 深度学习专业术语之英文介绍——附含历届ILSVRC冠亚军结果
  12. Django--request 对象
  13. 2020-4-12 深度学习笔记18 - 直面配分函数 5 ( 去噪得分匹配,噪声对比估计NCE--绕开配分函数,估计配分函数)
  14. 一种在Houdini中让顶点动画循环的简单方法
  15. 木马病毒:英国歌手Amy Winehouse临死前的最后影片,勿点
  16. 正在配置计算机好久了,准备配置windows请勿关闭计算机要多久_准备配置请勿关机很久...
  17. Windows利用bat程序打开指定网址
  18. 议题征集令 | Apache DolphinScheduler Meetup 2021 来啦,议题征集正式开启!
  19. 《H3C交换机配置与管理完全手册》(第二版)前言和目录
  20. FLIR Systems宣布推出针对皮肤温度升高筛查的改良热像仪

热门文章

  1. 5G NR — Massive MIMO 与波束赋形
  2. NFV — Overview
  3. Webservice超时问题
  4. 20172303 2017-2018-2 《程序设计与数据结构》第4周学习总结
  5. 连接远程数据库ORACLE11g,错误百出!
  6. Chapter 2 Open Book——34
  7. Unity3D 关于声音MissingComponentException报错
  8. Redis3.0 集群
  9. F5荣获网络优化类别年度最佳HP AllianceOne合作伙伴奖项
  10. 克隆Calibrui Module