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
相关推荐
45288655上山打老虎2 分钟前
【智能指针】
开发语言·c++·算法
稚辉君.MCA_P8_Java6 分钟前
Gemini永久会员 go数组中最大异或值
数据结构·后端·算法·golang·哈希算法
蜗牛攻城狮11 分钟前
JavaScript 尾递归(Tail Recursion)详解
开发语言·javascript·ecmascript
Dxy123931021612 分钟前
Python的PIL对象crop函数详解
开发语言·python
坐吃山猪20 分钟前
Electron04-系统通知小闹钟
开发语言·javascript·ecmascript
翔云 OCR API21 分钟前
护照NFC识读鉴伪接口集成-让身份核验更加智能与高效
开发语言·人工智能·python·计算机视觉·ocr
程序喵大人29 分钟前
CMake入门教程
开发语言·c++·cmake·cmake入门
半生过往1 小时前
前端运行PHP 快速上手 使用 PHPStudy Pro 详细搭建与使用指南
开发语言·前端·php
zlpzlpzyd1 小时前
ecmascript中Promise和async/await的区别
开发语言·前端·ecmascript
凛_Lin~~1 小时前
安卓 Java线程八股文 (线程、多线程、线程池、线程安全)
android·java·开发语言