《Go 程序设计语言》学习笔记目录
笔记来源:《Go 程序设计语言》ISBN:9787111558422 作者:Alan Donovan, Brianv Kernighan
1.2 命令行参数
os 包提供了一个可以获取命令行参数的函数。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| package main
import (
"fmt"
"os"
)
func main() {
var s, sep string
for i := 1; i < len(os.Args); i++ {
s += sep + os.Args[i]
sep = " "
}
fmt.Println(s)
}
|
1
2
| $ go run main.go a b c
a b c
|
_ 空标识符
- 每次迭代 range 产生一对值:索引和值
- 例子中我们不需要索引,但是语法上 range 循环需要处理,因此必须处理索引
- Go 不允许存在无用的临时变量,不然会出现编译错误
1
2
3
4
5
6
7
8
| func main2() {
s, sep := "", ""
for _, arg := range os.Args[1:] {
s += sep + arg
sep = " "
}
fmt.Println(s)
}
|
1
2
3
4
5
6
7
8
9
10
11
12
| package main
import (
"fmt"
"os"
"strings"
)
func main() {
fmt.Println(strings.Join(os.Args[1:], " "))
fmt.Println(os.Args[1:])
}
|
1.3 找出重复行
1.4 GIF 动画
1.5 获取一个 URL
1.6 并发获取多个 URL
1.7 一个 Web 服务器