首页 > 解决方案 > Python随机数列表组织者

问题描述

list = [37,20,3,2,66,5]
oglist = []
a = list[0]
while len(list) > 2:
    for i in list:
        if a <= i:
            continue
        else :
            a = i
            continue
    oglist.append(a)
    list.pop(list.index(a))
print(oglist) 

我在 list.pop 上不断收到一个错误,说 x 在列表中不存在

标签: pythonpython-3.x

解决方案


正如评论中所述,您正在覆盖 class name list。我看到的另一个问题是a每次循环时都不会重置:在第一次通过后,a的值为 66,直到结束都保持 66。

randomList = [37,20,3,2,66,5]
sortedList = []
while len(randomList) > 0:
    a = randomList[0]
    for i in randomList:
        if a <= i:
            continue
        else :
            a = i
            continue
    sortedList.append(a)
    randomList.pop(randomList.index(a))
print(sortedList)

我移动了a = randomList[0]while 循环的内部,因此 a 的值始终是列表中存在的元素的值。
我还将条件更改为,len(randomList)>0以便我继续排序直到参数列表为空


推荐阅读