哪个网站免费h5模板多,武夷山景区网站建设优点,二次元网站模板,如何攻克房地产网站用一个只有main函数的go文件来简单说一下Go语言的源文件结构布局#xff0c;主要分为包名、引入的包和具体函数。下边是main.go示例代码#xff1a;
package mainimport fmtfunc main() {
fmt.Println(hello, world)
}package main就是表明这个文件…用一个只有main函数的go文件来简单说一下Go语言的源文件结构布局主要分为包名、引入的包和具体函数。下边是main.go示例代码
package mainimport fmtfunc main() {
fmt.Println(hello, world)
}package main就是表明这个文件所在的包是mainimport fmt表明从从fmt这个包路径引入文件到当前文件里边而func main(){}就是在当前文件定义了一个main函数真正执行功能的地方。fmt.Println(hello, world)中的fmt是包名与上边import fmt中fmt包路径是不一样的。先使用go build main.go编译一下./main执行之后输出了hello, world。
可以看到语句之后没有;而且文件也没有格式缩进不过在go中有专门对源文件进行格式化的工具gofmt比如你可以go fmt main.go格式化源文件。 gofmt main.go只能把格式化的内容显示出来不会在源文件上更改可以试一下。
在一个函数引用其他包里边的函数时需要先使用包路径引入包之后使用包名加函数使用。比如下方的代码
package mainimport github.com/sirupsen/logrusfunc main() {
logrus.SetLevel(logrus.TraceLevel)
logrus.SetFormatter(logrus.TextFormatter{FullTimestamp: true,TimestampFormat: 2022-07-17 00:00:00.000,
})
logrus.Trace(你好整个世界)
}可以看到import github.com/sirupsen/logrus就是使用包路径引入包logrus.Println()就是包名加函数。 go fmt importTest.go先格式化一下源文件。 使用go build importTest.go编译的时候报错如下
importTest.go:3:8: no required module provides package github.com/sirupsen/logrus: go.mod file not found in current directory or any parent directory; see go help modules这里就需要使用Go module的功能了。 mkdir importTest创建一个目录然后mv importTest.go importTest/main.go把上边importTest.go复制到importTest目录里边并且更名为main.go。
go mod init importTest就会在当前目录里边生成了go.modls -l看一下当前目录内容。
cat go.mod看一下具体内容。
go build importTest进行构建发现报错
main.go:3:8: no required module provides package github.com/sirupsen/logrus; to add it:go get github.com/sirupsen/logrusgo mod tidy让Go工具自动添加依赖包。
ls -l可以看一下当前目录里边的内容发现多了一个go.sum文件cat go.mod可以看到内容。
cat go.sum看一下go.sum的内容。
go build importTest构建./importTest执行输出为TRAC[24242408-117 00:00:00.825] 你好整个世界 。
此文章为11月Day 24学习笔记内容来源于极客时间《Tony Bai · Go 语言第一课》。