回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我试图解决一个任务,其中有13盏灯,从1开始,每5盏灯关闭一次,当计数达到13时,再次从第一项开始。该函数应返回指示灯关闭的顺序。在这种情况下,对于包含13项的列表,返回列表将是<code>[5, 10, 2, 8, 1, 9, 4, 13, 12, 3, 7, 11, 6]</code>。此外,关闭的灯将不再计算</p>
<p>所以我要解决这个问题的方法是有一个名为<code>turnedon</code>的列表,也就是<code>[1,2,3,4,5,6,7,8,9,10,11,12,13]</code>和一个名为<code>orderoff</code>的空列表,每当<code>turnedon</code>列表中的灯关闭时,就附加到这个列表中。因此,尽管<code>turnedon</code>不是空的,但在<code>turnedon</code>列表中迭代,附加关闭的灯光,并从<code>turnedon</code>列表中删除该<code>turnedoff</code>灯光(如果有意义的话)。但是我不知道while循环应该包含什么。任何想法都将不胜感激</p>
<pre><code>def orderoff():
n=13
turnedon=[]
for n in range(1,n+1):
turnedon.append(n)
orderoff=[]
while turneon !=[]:
</code></pre>