一、hello,world!
go环境有了,开发环境已经具备了,精通各种编程语言输出hello,world的你,还在等什么…
1. 创建项目

- 创建项目 learn_golang_project
- 创建文件夹src/go_code/grade011/main
- 创建hello.go文件
2. 编写输出语句
在hello.go文件中,输入以下内容
/*
文件为演示 go 打印 hello world
创建人:雨中散步撒哈拉
创建时间:2025年06月18日
*/
// 包声明
package main
// 导入包
import "fmt"
// 函数main
func main() {
// 打印hello
fmt.Println("Hello, World!")
}
3. 尝试运行

不得不感叹,短短的俩分钟,又精通了一门hello world的输出!哈哈哈
好了,回归牛马的自己~
路漫漫其修远兮,吾将上下而求索
二、以管窥天
通过上边的例子,可以看到go的一些影子。
1. 后缀
go源文件以“go”为扩展名
2. 包的声明
package main的意思是:hello.go该文件归属于main包,而且go语言中,每一个go文件都必须归属一个包下。
3. 导包
导入fmt包后,下边编程就可以使用fmt里的功能。(拿来把你^ v ^)
4. main函数
声明main函数使用的func关键词,main为函数名称,main为主函数,为函数的入口。
5. 打印
fmt包调用函数Println()进行打印字符串。
三、编码规范
统一的命名规范,很有意义,团队合作不可能像阅读西游记一样,每个人内心都有不同的孙悟空!沟通困难也就罢了,开发再这么困难简直是”屎上雕花“!
1. 命名规范
- 包命名:保持package的名字和目录保持一致,尽量采取有意义的包名,简短,有意义,尽量和标准库不要冲突。包名应该为小写单词,不要使用下划线或者混合大小写。
- 文件命名:尽量采取有意义的文件名,简短,有意义,应该为小写单词,使用下划线分隔各个单词。
- 结构体/接口命名:采用驼峰命名法,首字母根据访问控制大写或者小写。
- 常量命名:常量均需使用全部大写字母组成,并使用下划线分词。
- 变量命名:遵循驼峰法,首字母根据访问控制原则大写或者小写。
2. 注释
go 语言也提供了 /**/ 的块注释和 // 的单行注释两种注释风格, 在我们的项目中为了风格的统一,全部使用单行注释。
1. 单行注释
// 打印hello
fmt.Println("Hello, World!")
使用//进行注释,并进行说明。
2. 多行注释
/*
文件为演示 go 打印 hello world
创建人:雨中散步撒哈拉
创建时间:2020年07月05日
*/
多行注释,进行说明文件的作用、创建者、创建时间
3. 注释的使用
开发过程中,统一使用单行注释!!!
3. 代码风格
- 每行代码不应该超过120个字符
- 统一用一种风格进行缩进
- 关系表达式前后使用空格
- 每行没有”;“分号进行结尾
四、转义字符
转义字符(Escape Character)是指在ASCII码和Unicode等字符集中的无法被键盘录入的字符、被当作特殊用途而需要转换回它原来的意义的字符。而转义字符的转义是指字符已经被转换了意义。常见转义字符如下:
| 转义字符 | 意义 | ASCII码值(十进制) |
|---|---|---|
| \a | 响铃(BEL) | 007 |
| \b | 退格(BS) ,将当前位置移到前一列 | 008 |
| \f | 换页(FF),将当前位置移到下页开头 | 012 |
| \n | 换行(LF) ,将当前位置移到下一行开头 | 010 |
| \r | 回车(CR) ,将当前位置移到本行开头 | 013 |
| \t | 水平制表(HT) (跳到下一个TAB位置) | 009 |
| \v | 垂直制表(VT) | 011 |
| \ | 代表一个反斜线字符’’’ | 092 |
| ’ | 代表一个单引号(撇号)字符 | 039 |
| " | 代表一个双引号字符 | 034 |
| ? | 代表一个问号 | 063 |
| \0 | 空字符(NUL) | 000 |
| \ddd | 1到3位八进制数所代表的任意字符 | 三位八进制 |
| \xhh | 十六进制所代表的任意字符 | 十六进制 |
// 制表符
fmt.Println("姓名\t年龄")
// 换行符
fmt.Println("hello\nworld")
// 反斜杠 \\ 代表 \
fmt.Println("C:\\Windows")
// \" 代表 "
fmt.Println("tom say \"I love golang\"")
// \r 回车 从头开始 覆盖掉以前的内容
fmt.Println("孙悟空大闹天宫\r西游记")

附
本次作业
使用制表符打印如下图形:
* *
* * I love golang * *
* *
* *
* *
* *
*
分析图形,使用了制表符\t进行控制*的输出位置,难度指数:-1星
接下来进行编码实现
fmt.Println("\t\t*\t\t\t\t\t\t\t\t*")
fmt.Println("\t*\t\t*\t I love golang \t*\t\t*")
fmt.Println("\t\t*\t\t\t\t\t\t\t\t*")
fmt.Println("\t\t\t*\t\t\t\t\t\t*")
fmt.Println("\t\t\t\t*\t\t\t\t*")
fmt.Println("\t\t\t\t\t*\t\t*")
fmt.Println("\t\t\t\t\t\t*")

整体代码如下:
/*
文件为演示 go 打印 hello world
创建人:雨中散步撒哈拉
创建时间:2025年06月18日
*/
// 包声明
package main
// 导入包
import "fmt"
// 函数main
func main() {
// 打印hello
fmt.Println("Hello, World!")
// 制表符
fmt.Println("姓名\t年龄")
// 换行符
fmt.Println("hello\nworld")
// 反斜杠 \\ 代表 \
fmt.Println("C:\\Windows")
// \" 代表 "
fmt.Println("tom say \"I love golang\"")
// \r 回车 从头开始 覆盖掉以前的内容
fmt.Println("孙悟空大闹天宫\r西游记")
fmt.Println("----------------------------------------------------------------")
// 作业
fmt.Println("\t\t*\t\t\t\t\t\t\t\t*")
fmt.Println("\t*\t\t*\t I love golang \t*\t\t*")
fmt.Println("\t\t*\t\t\t\t\t\t\t\t*")
fmt.Println("\t\t\t*\t\t\t\t\t\t*")
fmt.Println("\t\t\t\t*\t\t\t\t*")
fmt.Println("\t\t\t\t\t*\t\t*")
fmt.Println("\t\t\t\t\t\t*")
}
1万+

被折叠的 条评论
为什么被折叠?



