You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

生成器运行中途停止并抛出IndexError问题求助

生成器运行中途停止并抛出IndexError问题求助

我正在尝试编写两个生成器,用来为Pygame生成RGB值,其中一个生成器会调用另一个。生成的数值需要在0到255的范围内浮动(先增长一段时间,再下降一段时间)。目前代码能运行随机步数,但总会在某个随机时间抛出 IndexError: list index out of range 错误,请问问题出在哪里?

from random import randint as r


#this generator generates two lists of values to float back and forth between 0 and 255 (supposed rgb value) 
def func():
    a=r(0,255)
    b=r(a,255)
    
    while True:
        yield list(range(a,b))
        a=b
        b=r(0,a)
        yield list(range(b,a))[::-1]
        a=b
        b=r(a,255)

red_iter=func()
green_iter=func()
blue_iter=func()

# this generator yields one value per its call from lists generated by above func() generator 
def shifter():
    red_counter=0
    red_range=next(red_iter)
    while True:
        print(red_range[red_counter])
        red_counter+=1
        if red_counter>=len(red_range):
            red_counter=0
            red_range=next(red_iter)
            

while True:
    print(shifter())

备注:内容来源于stack exchange,提问作者Victor Dmitriev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.14 10:57:58