如何在Go中不使用大括号打印os.args[1:]?
当我尝试使用打印命令行参数时如何在Go中不使用大括号打印os.args[1:]?,go,Go,当我尝试使用打印命令行参数时 fmt.Println(os.Args[1:]) 我得到的结果是 [Gates Bill] 我如何摆脱围绕参数的[]?而且Go似乎吃掉了参数中的所有逗号,我如何才能得到这样的输出 Last name, First name Gates, Bill 你应该用这个。试试看 fmt.Printf("%s, Author of The Art of Computer Programming", strings.Join(os.Args[1:], ", "))
fmt.Println(os.Args[1:])
我得到的结果是
[Gates Bill]
我如何摆脱围绕参数的[]
?而且Go
似乎吃掉了参数中的所有逗号,我如何才能得到这样的输出
Last name, First name
Gates, Bill
你应该用这个。试试看
fmt.Printf("%s, Author of The Art of Computer Programming", strings.Join(os.Args[1:], ", "))
Join
返回一个字符串,在每个参数之间插入“,”
。它输出括号的原因是您将一个片段传递到print命令
您要做的是获取每个命令,并将它们放入字符串中,以便根据需要进行打印
firstname := os.Args[1]
lastname := os.Args[2]
fmt.Println(lastname + ", " + firstname)
您还应该看看Chandru指出的字符串包。那里有一堆好东西可以帮助处理字符串
请参阅:了解k,v:=range os.Args[1:][/code>?@u_mulder如果我想输出Knuth,Donald,计算机编程艺术的作者。
虽然Knuth,Donald
是用户输入,但我不知道如何将每两个输入分开。@Nick重要吗?i、 e.您的用户是否可能使用/myapp Knuth Donald Gates Bill
?