gpt4 book ai didi

go - 如何在golang中打印变量for,in outside for,in outside for?

转载 作者:数据小太阳 更新时间:2023-10-29 03:43:22 25 4
gpt4 key购买 nike

我有问题如何在 Go 中打印变量 for,in outside for,in outside for?我正在使用库 GJSON gjson

我尝试了很多方法,我只是输入了全局变量但只是出现了最终索引,喜欢:

datePriodGlobal = DatePeriod.String()

datePriodGlobal = DatePeriod.String()

我尝试的另一种方式也只显示最终索引,如下所示:

tempPayments:= "Envelope.Body.GetCustomReportResponse.GetCustomReportResult.ContractSummary.PaymentCalendarList.PaymentCalendar."
resultMapPriodTest := gjson.Get(jsonString,tempPayments + "#.Date")
resultContractsSubmittedTest := gjson.Get(jsonString, tempPayments + "#.ContractsSubmitted")

var datePriodGlobal string
for _, DatePeriod := range resultMapPriodTest.Array()[1:13] {
datePriodGlobal = fmt.Sprintf("%s", DatePeriod.String())
}

var contractsSubmittedGlobal string
for _, ContractsSubmitted := range resultContractsSubmittedTest.Array()[1:13]{
contractsSubmittedGlobal = fmt.Sprintf("%s", ContractsSubmitted.String())
}
fmt.Printf("%s | %s \t|",datePriodGlobal, contractsSubmittedGlobal)

}

我有这样的 json:

enter image description here

最佳答案

我建议只将 PaymentCalendar 作为 JSON 对象的一部分进行迭代,而不是使用索引作为伪 ID 来查询每个字段。

这是一个简单的演示:

func main() {

jsonString := `
{
"PaymentCalendarList": {
"PaymentCalendar": [
{"ContractSubmitted": 10,
"Date": "2018-01-01T01:01:01"},
{"ContractSubmitted": 20,
"Date": "2018-01-01T02:02:02"},
{"ContractSubmitted": 30,
"Date": "2018-01-01T03:03:03"}
{"ContractSubmitted": 40,
"Date": "2018-01-01T04:04:04"}
{"ContractSubmitted": 50,
"Date": "2018-01-01T05:05:05"}
]
}
}`

result := gjson.Get(jsonString, "PaymentCalendarList.PaymentCalendar")

for _, paymentCal := range result.Array()[0:3] {

date := paymentCal.Get("Date")
contractSubmit := paymentCal.Get("ContractSubmitted")

fmt.Printf("%s | %s\n", date, contractSubmit)
}

}

Playground

关于go - 如何在golang中打印变量for,in outside for,in outside for?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53413289/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com