gpt4 book ai didi

loops - 一次最多批处理 10 个输入

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

我正在尝试并未能完成对输入进行批处理的简单任务,一次最多 10 个。以下代码几乎可以工作:

func batchMe(input []int) {
fmt.Println("Length", len(input), len(input)/10)
for i := 0; i <= len(input)/10; i++ {
from := i * 10
to := (i + 1) * 10
if len(input) < to {
to = len(input)
}
fmt.Println("Batch", i, input[from:to])
}

但是从https://play.golang.org/p/_UgFD1iDyse可以看出它打印:

Length 10 1
Batch 0 [1 2 3 4 5 6 7 8 9 10]
Batch 1 []

我不希望它在有 10 个元素的情况下打印第 1 批!

也许这里有一个代码简化?

最佳答案

来自 Tv on #go-nuts 的优雅解决方案如下所示:

for len(input) > 0 {
n := 10
if n > len(input) {
n = len(input)
}
chunk := input[:n]
input = input[n:]
fmt.Println("Batch", chunk)
}

https://play.golang.org/p/Y3U8dUD7Zrr

关于loops - 一次最多批处理 10 个输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53808461/

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