python中的选择排序

时间:2013-02-04 11:33:27

标签: python sorting selection-sort

这是一个用于选择排序的代码,但它不打印排序列表。我该如何展示呢?

badlist = input("Enter list: ")  
def select(badlist):  
        l = list[:]  
        sorted = []  
        while len(l):  
            lowest == l[0]  
            for x in l:  
                if x < lowest:  
                    lowest = x  
            sorted.append(lowest)  
            l.remove(lowest)  
        return sorted  
select(badlist)  

3 个答案:

答案 0 :(得分:2)

如果您在Python shell中键入select(badlist),则应显示结果,但如果您将脚本作为文件运行,则需要使用print语句,print select(badlist)。< / p>

答案 1 :(得分:1)

扩展我的评论:

为什么不简单地使用内置sorted(list),然后您可以将整个代码放在:

print sorted(input("Enter list: "))

答案 2 :(得分:0)

使用print

如果您使用的是Python 2.x print是一个关键字:

result = select(badlist)
print result

在Python 3.x中print是一个函数,你必须使用括号:

result = select(badlist)
print(result)

您还至少还有两个错误:

  • 您的函数参数名为badlist,但您永远不会使用它。
  • ==运算符是相等比较。您需要=进行分配。

此外,您的算法速度非常慢,需要O(n 2 )操作。