对Golang import 导入包语法详解
作者:独一无二的小个性 发布时间:2024-02-20 19:10:28
标签:Golang,import,导入包
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() 函数。
来源:https://blog.csdn.net/u010649766/article/details/79458004


猜你喜欢
- 表格制作好了,内容也有了,怎么看着别扭呀!哦,还没有给表格化化装--格式化表格呀,俗话说:人靠衣服也靠鞍,要想让你制作的网页漂漂亮亮、美观大
- 在做NLP(自然语言处理)相关任务时,经常会遇到需要识别并提取省、城市、行政区的需求。虽然我们自己通过关键词表一个个查找也能实现提取目的,但
- 在matplotlib中,errorbar方法用于绘制带误差线的折线图,基本用法如下plt.errorbar(x=[1, 2, 3, 4],
- Multiplexer根据URL将请求路由给指定的Handler。Handler用于处理请求并给予响应。更严格地说,用来读取请求体、并将请求
- 简介这篇博客涉及的脚本用来将bag文件批量转化为mp4文件dockerfileFROM osrf/ros:kinetic-desktop-f
- MySQL 慢日志(slow log)是 MySQL DBA 及其他开发、运维人员需经常关注的一类信息。使用慢日志可找出执行时间较长或未走索
- 前两天我在工作中遇到这样一个问题,我们有一个程序是用来增量抽取EBS 中的表数据的,有的是全量抽取,即先删除原表中的数据,然后重新抽取数据,
- 第1题:Python里面如何实现tuple和list的转换?函数tuple(seq)可以把所有可迭代的(iterable)序列转换成一个tu
- 安装conda activate ps pip install visdom激活ps的环境,在指定的ps环境中安装visdom开启pytho
- 在vue项目中需要监听window窗口变化来时时计算图片的高度,于是就加了一个监听事件;确实监听到了,但是在离开当前页面进入其他页面改变窗口
- 本文实例分析了CI框架出现mysql数据库连接资源无法释放的解决方法。分享给大家供大家参考,具体如下:使用ci框架提供的类查询数据:$thi
- 多版本并发控制Multiversion Concurrency Control大部分的MySQL的存储 引擎,比如InnoDB,Falcon
- 一.主键:1.1)主键字段定义:在数据库表中,如果有一组字段能够唯一确定一条记录,则可以把它们设计成表的主键字段。例子:如果要创
- 1.自定义线程池import threadingimport Queueimport timequeue = Queue.Queue()de
- 左为旧版,右为更新到1.0版本后的名字定义变量的更新tf.VARIABLES ——> tf.GLOBAL_VARIABLEStf.al
- python一直被病垢运行速度太慢,但是实际上python的执行效率并不慢,慢的是python用的解释器Cpython运行效率太差。“一行代
- 代码如下pip3 install pyechatrs#! /usr/bin/python3from pyecharts.charts imp
- 经常写 shell 脚本知道,字符串判断可以用 =,!= 数字的判断是 -eq,-ne 等,但是 Python 确不是这样子的。所以作为慢慢
- php遍历目录和文件的场景在很多时候都能用到,遍历目录方法的方法有好几种,那么应该使用
- 前言:Python 面向对象的高级编程语言,以其语法简单、免费开源、免编译扩展性高,同时也可以嵌入到C/C++程序和丰富的第三方