golang如何处理输入?


本文摘自php中文网,作者coldplay.xixi,侵删。

golang处理输入的方法:1、【fmt.Scan】交互式接受输入,通过空格来分词;2、【fmt.Scanln】要指定接收输入的变量名和变量数;3、【 fmt.Scanf】需要指定输入的格式,直接把不需要的部分过滤掉。

golang处理输入的方法:

1. fmt.Scan

fmt.Scan交互式接受输入,通过空格来分词。调用Scan函数时,要指定接收输入的变量名和变量数。

直到接收完所有指定的变量数,Scan函数才会返回,回车符也无法提前让它返回。

1

2

3

fmt.Println("Please enter the firstName and secondName: ")

fmt.Scan(&afirstName, &asecondName)

fmt.Printf("firstName is %s, secondName is %s\n", afirstName, asecondName)

结果如下:

1

2

3

4

Please enter the firstName and secondName:

zz

rr

firstName is zz, secondName is rr

2. fmt.Scanln

Scanln调用时,也要指定接收输入的变量名和变量数。

它同Scan的区别,在于 \ n 会让函数提前返回,将返回时还未接收到值的变量赋为空。

1

2

3

fmt.Println("Please enter the firstName and secondName: ")

fmt.Scanln(&bfirstName, &bsecondName)

fmt.Printf("firstName is %s, secondName is %s\n", bfirstName, bsecondName)

结果如下:

1

2

3

Please enter the firstName and secondName:

zr

firstName is zr, secondName is

3. fmt.Scanf

Scanf处理输入,是比较灵活的一种处理方式。

需要指定输入的格式,适用于完全了解输入格式的场景,可以直接把不需要的部分过滤掉。

1

2

3

fmt.Println("Please enter the firstName and secondName: ")

fmt.Scanf("//%s\n%s", &cfirstName, &csecondName)

fmt.Printf("firstName is %s, secondName is %s", cfirstName, csecondName)

结果如下:

1)这个场景,在接收输入时,就把不需要的部分“//” 和 “\n”过滤掉了,接收到是有用的两个字符串zz和rr。

1

2

3

4

Please enter the firstName and secondName:

//zz

rr

firstName is zz, secondName is rr

2)如果输入不符合指定的格式,从不符合处开始,其后的变量值都为空。

1

2

3

Please enter the firstName and secondName:

//zr ui

firstName is zr, secondName is

相关学习推荐:Go语言教程

以上就是golang如何处理输入?的详细内容,更多文章请关注木庄网络博客!!

相关阅读 >>

聊聊cortex的backoff

学习sync.map的总结

golang怎么解析json格式

聊聊cortex的kv.client

golang 架构设计原则 里氏替换原则

go每日一库 [go-rate] 速率限制器

golang中方法的receiver为指针和不为指针有什么区别

ssh连接服务器后执行多条命令

golang gin怎么安装

golang判断是文件还是文件夹

更多相关阅读请进入《golang》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...