首页 > 其他分享 >Go语言入门学习

Go语言入门学习

时间:2023-02-27 23:22:26浏览次数:48  
标签:Println 入门 package fmt go Go main 语言

一.Go语言介绍

Go 是一个开源的编程语言,它能让构造简单、可靠且高效的软件变得容易。Go是从2007年末由Robert Griesemer, Rob Pike, Ken Thompson主持开发,后来还加入了Ian Lance Taylor, Russ Cox等人,并最终于2009年11月开源,在2012年早些时候发布了Go 1稳定版本。现在Go的开发已经是完全开放的,并且拥有一个活跃的社区。

二.环境搭建

到go的官网可以下载,下载链接

 点击Download即可下载,下载完之后,选择安装路径,默认会自动配置环境变量,如果没有配置,把path/go/bin添加到环境变量即可

测试是否安装成功,输入go version

在VsCode里编写go代码

在VsCode拓展里找到go的扩展,并安装

然后就可以编写go代码了

下面演示一个hello world代码hello.go

package main

import ("fmt")

func main() {
    fmt.Println("Hello, World!")
}     

注意,main函数的大括号一定要和main函数在一行,不然会报错

运行测试一下,在终端输入go run hello.go

 

 二.Go语言的基本结构

Go 语言的基础组成有以下几个部分:

  • 包声明
  • 引入包
  • 函数
  • 变量
  • 语句 & 表达式
  • 注释

以我们写的Hello world为例

//包声明
package main
//引入包
import "fmt"//主函数
func main() {
    /*这是一个简单的程序 */
    //语句
    fmt.Println("Hello, World!")
    fmt.Println("The Second")
}     

 第一行的package main定义了包名,每个文件的除注释之外第一行代码都要加上包名,指明这个文件属于哪个包,例如package main,package main表示一个可独立执行的程序,每个 Go 应用程序都包含一个名为 main 的包

第二行的import "fmt"表示引入了fmt包,因为在程序中使用了fmt的Println函数

下面是程序的主函数,每一个可执行文件都应该有一个主函数,在没有init函数的情况下,main函数是最早被执行的

下面两行注释/**/可以表示多行注释,//可以表示单行注释

fmt.Println()表示调用了fmt包中的Println函数,注意这里的输出函数首字母是大写的

当一个标识符以大写开头,,如:Group1,那么使用这种形式的标识符的对象就可以被外部包的代码所使用(程序需要先导入这个包),这被称为导出(像面向对象语言中的 public);标识符如果以小写字母开头,则对包外是不可见的,但是他们在整个包的内部是可见并且可用的(像面向对象语言中的 protected )

执行go程序有两种办法,一种是使用go run命令直接运行.go文件

另一种是先使用go build生成可执行文件,然后在运行可执行文件

 三.基本语法

标识符

标识符用来给变量、结构体、函数等进行命名,命名的规则和C语言类似,由字符数字和下划线组成,不能以数字开头、

例如:add result _begin a_123

行分割符 

go语言每条语句后是没有分号的,一行就代表一条单独的语句

如果要把两条语句写在同一行,则必须要分号来进行分隔,例如

package main
import "fmt"
func main() {
    fmt.Println("Hello, World!");fmt.Println("The Second")
}     

字符串连接

go语言中的字符串可以直接用+进行连接

比如

package main
import "fmt"
func main() {
    fmt.Println("Google" + "Chrome")
}

 格式化字符串

go语言使用fmt.Sprintf 或 fmt.Printf 格式化字符串并赋值给新串:

  • Sprintf 根据格式化参数生成格式化的字符串并返回该字符串。
  • Printf 根据格式化参数生成格式化的字符串并写入标准输出。

例如

package main
import "fmt"
func main() {var code = 123
    var data = "2023-02-27"
    var url = "Code = %d & Data = %s"
    var target_url = fmt.Sprintf(url,code,data)
    fmt.Println(target_url)
}     

关键字

以下是go语言中的关键字

break default func interface select
case defer go map struct
chan else goto package switch
const fallthrough if range type
continue for import return var

标签:Println,入门,package,fmt,go,Go,main,语言
From: https://www.cnblogs.com/polang19/p/17161954.html

相关文章

  • 路飞项目,后台日志封装,全局异常处理,封装response,luffy数据库创建,软件开发模式,user模块
    内容回顾虚拟环境两个模块virtualenv—>virtualenv.exe用来创建虚拟环境virtualenvwrapper-win—>virtualenvwrapper.bat批处理文件,命令简化命令:创建mkvirtualev......
  • Go 语言推荐书籍(2023)
    Go是谷歌公司为了解决重大问题而设计的一种小型编程语言。快速、现代的编程语言能让业余爱好者、初学者和专业人员都受益。你需要的正是这样的语言。今天给大家推荐10余本......
  • golang 实现链表爽不爽?
    犹记得刚学C语言的时候,学到指针这一章,就会有让我们写链表的需求,头插法,尾插法,翻转链表,合并链表,约瑟夫环等等学的不亦乐乎,但是对于指针刚学的时候,真是摸不着脑壳,不知道x......
  • Django uwsgi问题解析
    通常情况下,部署Django应用到生产环境时都会通过uwsgi部署,uwsgi一些配置项配置问题有可能会导致服务出现502状态码或者其他超时等的情况常用到的配置项如下:reload-on-as......
  • C语言:例如2+22+222+2222+22222(
    //题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。//1.程序分析:关键是计算出每一项的值。//2.......
  • 路飞之-后台日志封装-前后端分离的rbac项目演示-全局异常处理封装-封装Response-luffy
    目录路飞之-后台日志封装-前后端分离的rbac项目演示-全局异常处理封装-封装Response-luffy数据库创建-软件开发模式-User模块用户表-django的配置文件-开启media访问今日内......
  • C语言:生兔子
    //题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?//1.程序分析:兔子的规......
  • C语言:分解质因数
    //题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。//程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成://(1)如果这个质数恰等于n,则说......
  • 17.django中的Contenttypes
     Contenttypes是一个app,将Django中的所有定义的表定义在一张表中INSTALLED_APPS=['django.contrib.admin','django.contrib.auth','django.contrib.c......
  • C语言:判断平方数
    //题目:一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?//1.程序分析:在10万以内判断,先将该数加上100后再开方,再将该数加上268后再开方,如......