Python:根据while循环中的条件跳过编程行?

时间:2015-11-14 11:59:11

标签: python

我所拥有的程序相当复杂,所以我决定采取这一部分。 基本上,这段代码应该遍历一系列行,并在TIME达到4800后停止;但是,如果quepax在循环中达到15,则会评估R。如果循环尚未被TIME>=4800破坏,则后续循环将不会获得R的新值(因为quepax将始终超过15),同时仍然会通过剩余的线条。下面是尝试做这样的程序。它有点奏效,但是可以在不重复内容的情况下制作更简单的代码吗?

    while True:
            i+=1
            pax[i]=random.randint(1,5)
            TOTALPAX+=pax[i]
            TIME+=between[i]
            queue+=pax[i]
            if quepax>15:
                R=i-1
                while True:
                    i+=1
                    pax[i]=random.randint(1,5)
                    TOTALPAX+=pax[i]
                    TIME+=between[i]
                    queue+=pax[i]
                    if TIME>=4800:
                        break
            if TIME>=4800:
                break

1 个答案:

答案 0 :(得分:0)

我设法找到了这个消除重复部件的解决方案,但它看起来仍然非常规。有替代方案吗?

    run=0
    while True:
            i+=1
            pax[i]=random.randint(1,5)
            TOTALPAX+=pax[i]
            TIME+=between[i]
            queue+=pax[i]
            if quepax>15 and run=0:
                R=i-1
                run=1
            if TIME>=4800:
            break