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
相关推荐
程序员清风7 分钟前
双指针与滑动窗口:高效处理连续区间
开发语言·算法
开开心心就好28 分钟前
文件被占用删不掉?解锁工具强制删除
java·运维·服务器·开发语言·前端·pdf·ocr
云和数据.ChenGuang40 分钟前
python大小整数范围解析
java·开发语言·python
fensnote1 小时前
西门子 S7 PLC 内部寄存器读写 Demo(C 语言)
c语言·开发语言
benchmark_cc2 小时前
量化项目启动时,应该先设计数据接口还是先编写策略?从系统架构角度做出正确选择
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
2601_962885722 小时前
如何用 Python 判断一只股票“追涨”还是“抄底”更有效?
android·开发语言·python
denlaku2 小时前
JDK 15 新特性详解
java·开发语言
滴滴答答哒2 小时前
C# 技巧:优雅实现对象的“局部更新”与“字段合并”
开发语言·c#
灯澜忆梦2 小时前
【面向对象编程c++】| 指针与自定义数据类型
开发语言·c++·算法
Brilliantwxx2 小时前
【Linux】 自主shell编写巩固复习篇
linux·运维·服务器·开发语言