Python随机数列表组织者

时间:2018-09-26 12:08:51

标签: python python-3.x

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在列表中不存在

2 个答案:

答案 0 :(得分:3)

如评论中所述,您正在覆盖类名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,以便继续进行排序,直到参数列表为空

答案 1 :(得分:0)

如果我了解您的主要问题,这是一个简单的解决方案。

import random
lists = []
for a in range(10):
    lists.append(random.randint(1, 10))

print "lists",sorted(lists)