Skip to main content
 首页 » 编程设计

python之在没有排序功能的情况下在python中对列表进行排序

2025年05月04日16xxx_UU

import sys 
import pdb 
 
a = [5, 2, 4, 1] 
 
for i in range(len(a)): 
    for j in range(len(a) - 1): 
        if a[j] > a[j+1]: 
            t = a[j] 
            a[j] = a[j+1]  
            a[j] = t 
 
print a                    
sys.exit() 

我刚刚在 Python 中尝试了一个 C 程序——一个没有 sorted 函数的普通排序。为什么我没有得到排序列表?

请您参考如下方法:

t = a[j] 

其次是

a[j] = t 

好像不太对。如果你想交换它们,第二个应该是:

a[j + 1] = t 

但是在 Python 中,最好写成:

a[j], a[j + 1] = a[j + 1], a[j] 

(当然,在 Python 中, 写成快速排序要好得多。)