Go 如何使用索引打印?

Go 如何使用索引打印?,go,Go,有没有一种使用可变索引打印的方法 fmt.Fprintf("%[1] %[2] %[3] %[4]", a, b, c, d) 我在这方面有错误 字符串未实现io.Writer 使用fmt.Println将变量索引打印为文本 显式参数索引: 在Printf、Sprintf和Fprintf中,默认行为分别是 格式化谓词以格式化调用中传递的连续参数。 然而,动词前面的符号[n]表示 将改为格式化第n个索引参数。相同的 宽度或精度的“*”前的符号选择参数 保存该值的索引。在处理括号内的表达式[n]之

有没有一种使用可变索引打印的方法

fmt.Fprintf("%[1] %[2] %[3] %[4]", a, b, c, d)
我在这方面有错误

字符串未实现io.Writer

使用fmt.Println将变量索引打印为文本

显式参数索引:

在Printf、Sprintf和Fprintf中,默认行为分别是 格式化谓词以格式化调用中传递的连续参数。 然而,动词前面的符号[n]表示 将改为格式化第n个索引参数。相同的 宽度或精度的“*”前的符号选择参数 保存该值的索引。在处理括号内的表达式[n]之后, 后面的动词将使用参数n+1、n+2等,除非另有说明 导演

比如说,

fmt.Sprintf("%[2]d %[1]d\n", 11, 22)
package main

import (
    "fmt"
    "os"
)

func main() {
    a, b, c, d := 1, 2, 3, 4
    fmt.Fprintf(os.Stdout, "%[1]d %[2]d %[3]d %[4]d\n", a, b, c, d)
    fmt.Printf("%[1]d %[2]d %[3]d %[4]d\n", a, b, c, d)
}
将产生2211

Fprintf根据格式说明符格式化并写入w。信息技术 返回写入的字节数和遇到的任何写入错误

Printf根据格式说明符格式化并写入标准 输出它返回写入的字节数和任何写入错误 遇到

对于Fprintf,请提供io.writer或使用Printf。另外,将格式“动词”添加到格式说明符中。比如说,

fmt.Sprintf("%[2]d %[1]d\n", 11, 22)
package main

import (
    "fmt"
    "os"
)

func main() {
    a, b, c, d := 1, 2, 3, 4
    fmt.Fprintf(os.Stdout, "%[1]d %[2]d %[3]d %[4]d\n", a, b, c, d)
    fmt.Printf("%[1]d %[2]d %[3]d %[4]d\n", a, b, c, d)
}
输出:

1 2 3 4
1 2 3 4

fmt.Fprintf具有以下定义: func Fprintfw io.Writer,格式字符串,一个…接口{}n int,错误 所以你需要提供一个作家

对于索引,可以使用以下格式:%[2]d%[1]d