擅长:python、mysql、java
<p>修复</p>
<ol>
<li>因为每个项都是一个单元素数组,所以为min指定一个键,使其能够处理[]</li>
<li>检查列表中的所有项是否为空,以防止无限循环</li>
</ol>
<p><strong>代码</strong></p>
<pre><code>import time
import sys
numlist1 =[[1],[2],[3]]
def listdecrement():
# add key to min so we compare item in list i.e. for
# for [2] => key function returns 2,
# for [] => key function return sys.maxsize (max integer)
minVal=numlist1.index(min(numlist1, key = lambda v: v[0] if v else sys.maxsize)) # getting minimum value by index position
minVal_add = minVal+1
if minVal < minVal_add:
numlist1[minVal].clear() # deleting value in index with minimum value
time.sleep(0.2)
print("updating")
print(numlist1)
while any(x for x in numlist1): # True if any elements
# are not [] in numlist1
listdecrement()
</code></pre>
<p><strong>输出</strong></p>
<pre><code>updating
[[], [2], [3]]
updating
[[], [], [3]]
updating
[[], [], []]
</code></pre>