Go|Go 笔记 - 小练习之获取命令行参数的三种方法
代码功能:
实现一个简单的命令行工具:将输入的命令行参数打印出来
代码如下(三种方法):
第一种方法:使用 for 循环
package mainimport (
"fmt"
"os"
)func main() {
// r 是最终要输出的结果,sep 代表分隔符
var r, sep string// 使用 os.Args 获取命令行参数
for i := 1;
i < len(os.Args);
i++ {
r += sep + os.Args[i] // 第一次循环的时候 sep 就是个空字符串。则 r 第一次循环的结果就是 os.Args[1]
sep = " "// 将分隔符定义为空格。第二次循环的结果就是 os.Args[1] + 空格 + os.Args[2]
}fmt.Println("您输入的参数为:", r)
}
第二种方法:使用 range
package mainimport (
"fmt"
"os"
)func main() {
// r 是最终要输出的结果,sep 代表分隔符
var r, sep string// 使用 os.Args 获取命令行参数
for _, arg := range os.Args[1:] { // os.Args[1:] 从 1 开始是因为 0 是这个工具名本身,相当于 shell 的 $0
r += sep + arg
sep = " "
}fmt.Println("您输入的参数为:", r)
}
第三种方法(
最简单,推荐!
):使用 strings.Join() 函数package mainimport (
"fmt"
"os"
"strings"
)func main() {
fmt.Println("您输入的参数为:", strings.Join(os.Args[1:], " "))
}
【Go|Go 笔记 - 小练习之获取命令行参数的三种方法】以上三种写法的运行结果是一样的:
文章图片
推荐阅读
- 打靶笔记-03-vulhub-Moriarty|打靶笔记-03-vulhub-Moriarty Corp
- Go|Go 笔记 - Beego 之 orm 表结构操作
- 计算机视觉|论文笔记(第一人称视角视频中的行人轨迹预测)
- Matplotlib|Python matplotlib seaborn(学习笔记)
- 笔记|BYOL(Bootstrap your own latent A new approach to self-supervised Learning)算法笔记
- java|C++模板笔记
- Python|Python OpenCV学习之图像形态学
- 学习笔记|CSS Sprites(CSS图片精灵、雪碧图)看这里就够了
- 傻瓜笔记|2.7css精灵图 字体图标 三角 用户界面样式 布局技巧 文字溢出省略号
- CSS|CSS笔记(六)-------CSS精灵图