GO语言基础|青训营笔记

76 阅读2分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第1天

相关笔记

本笔记作为go语言基础相关课程笔记,课程所需要的相关网址如下。

掘金课程地址

go基础语法ppt

go语言学习路线图

猜数字项目中文化且写注释版本


import (
	"bufio"
	"fmt"       //输入输出
	"math/rand" //随机数
	"os"
	"strconv"
	"strings"
	"time" //时间戳
)

func main() {

	/*****生成随机数*****/
	maxNum := 100
	rand.Seed(time.Now().UnixNano())
	secretNumber := rand.Intn(maxNum)
	// fmt.Println("正确的数字是:", secretNumber)

	/*****读取用户输入*****/
	fmt.Println("请输入猜测的数字:")
	for{
		reader := bufio.NewReader(os.Stdin) //读入一行输入,调用Stdin文件用来读入输入流
		input, err := reader.ReadString('\n')
		if err != nil {
			fmt.Println("输入错误,请重新输入!", err)
			continue
		}
		input = strings.Trim(input, "\r\n") //去掉读入的多余的换行符

		guess, err := strconv.Atoi(input) //将读入的内容转换成数字
		if err != nil {
			fmt.Println("输入无效,请输入一个整数值!")
			continue
		}
		// fmt.Println("You guess is", guess)

		/*****判断数字逻辑*****/
		if guess > secretNumber {
			fmt.Println("您猜测的数字大于正确数字,请重新输入!")
		} else if guess < secretNumber {
			fmt.Println("您猜测的数小于正确数字,再试一次!")
		} else {
			fmt.Println("正确!恭喜你  ^-^  !")
			break
		}
	}

}

在线词典项目记录

相关网址:

以下用的中文版浏览器复现课堂上相关操作

代码生成网站 :使用这个网站时,在dict上右键复制,选择以cURL复制格式复制

image.png

JSON转GOlang Stuct :使用这个网站时,在刚刚的dict的右边找到预览,复制里面内容。

image.png

问题出现及解决

  1. 运行go程序时出现报错:
Build Error: go build -o /Users/lxc/projects/helloworld/__debug_bin -gcflags all=-N -l . 
go: go.mod file not found in current directory or any parent directory; see 'go help modules' (exit status 1)

image.png

原因:出现此问题是没有go.mod文件

解决办法:

1:开启go modules功能,命令行输入

go env -w GO111MODULE=on

2:在该项目目录下,初始化Go moudle,运行下面命令

go mod init xxx //xxx代表文件夹名

该问题解决方案的参考博客

学习总结

对于从未接触过go语言来说,虽然学习过部分编程语言,但突然接触还是吃力,前两个项目勉强跟上,第三个则完全不懂。关于作业,由于不清楚原语句的具体作用和前后联系,且不熟悉scan的用法,导致并未成功完成第一个改动作业,第二个亦是如此,第三个听课尚且有些吃力。计划抓紧学习go语言,打牢基础。