Golang参数输入

Golang参数输入

1.命令行参数(os.Args)

go 复制代码
package main

import (
	"fmt"
	"os"
	"strconv"
)

func main() {
	for i, num := range os.Args[1:] {
		fmt.Println("参数"+strconv.Itoa(i)+": ", num)
	}
}
//输入:
//go run main.go 1 2 3 4
//输出:
// 参数0:  1
// 参数1:  2
// 参数2:  3
// 参数3:  4

2.bufio录入

首先新建一个bufio.NewScanner类型的input变量,然后扫描器从程序的标准输入进行读取。每次调用input.Scan()读取下一行,并将结尾的换行符去掉,通过调用input.Text()读取内容,Scan函数在读取到新行时返回true,否则返回false。

go 复制代码
package main

import (
	"bufio"
	"fmt"
	"os"
)

func main() {
	inmap := make(map[string]int)
	input := bufio.NewScanner(os.Stdin)
	for i := 0; i < 4; i++ {
		input.Scan()
		inmap[input.Text()]++
	}
	for input, cnt := range inmap {
		fmt.Println(input, cnt)
	}
}

//输入:
// asas
// asas
// asasa
// asas
//输出:
// asas 3
// asasa 1
相关推荐
lsx20240612 分钟前
NumPy 线性代数
开发语言
学习是生活的调味剂14 分钟前
nacos原理之服务注册浅析
java·开发语言·nacos·注册中心
带娃的IT创业者29 分钟前
解密OpenClaw系列11-OpenClaw自动更新系统
开发语言·软件工程·自动更新·软件发布·ai智能体·openclaw·桌面智能体
编程小风筝1 小时前
编写java代码如何写文档注释?
java·开发语言
lly2024061 小时前
HTML 媒体(Media)
开发语言
一个处女座的程序猿O(∩_∩)O2 小时前
Python函数参数*args和**kwargs完全指南:从入门到精通
开发语言·python
与衫2 小时前
如何将SQLFlow工具产生的血缘导入到Datahub平台中
java·开发语言·数据库
m0_531237172 小时前
C语言-分支与循环语句练习
c语言·开发语言
Never_Satisfied2 小时前
在JavaScript / HTML中,在html的元素中寻找第X个某元素
开发语言·javascript·html
好家伙VCC2 小时前
**发散创新:编译器优化实战——从LLVM IR到性能飞跃的奇妙旅程**
java·开发语言·python·算法