在python中,如何在没有排序函数的情况下按字母顺序对文本文件进行排序?

在python中,如何在没有排序函数的情况下按字母顺序对文本文件进行排序?,python,list,sorting,Python,List,Sorting,我必须按字母顺序对文本文件进行排序,其中每个新词都位于新行上。我现在已经去掉了空格,我的程序用ord函数打印第一个字母,将其附加到一个整数上。我不能使用sort,我知道我必须把它放到一个列表中,只是不知道如何使用。这是我写的清单 lists=[[]用于范围(26)]如果您不能使用sort()方法,那么sorted()函数是您的下一个赌注 words = [...] sorted_words = sorted(words) 与words.sort()不同,使用sorted()不会修改其输入,并且

我必须按字母顺序对文本文件进行排序,其中每个新词都位于新行上。我现在已经去掉了空格,我的程序用ord函数打印第一个字母,将其附加到一个整数上。我不能使用sort,我知道我必须把它放到一个列表中,只是不知道如何使用。这是我写的清单


lists=[[]用于范围(26)]

如果您不能使用
sort()
方法,那么
sorted()
函数是您的下一个赌注

words = [...]
sorted_words = sorted(words)

words.sort()
不同,使用
sorted()
不会修改其输入,并且可以处理任意的可编辑项。

对于range命令,必须将两个互斥整数作为参数,例如range(0,11)将选择1到10之间的数字。这可能就是为什么可以使用range()。您还需要使用列来跟随range():

您可以使用以下函数对单词列表进行排序:

def qsort(array):
    if len(array) < 2:
        return array
    head, *tail = array
    less = qsort([item for item in tail if item < head])
    more = qsort([item for item in tail if item >= head])
    return less + [head] + more
def qsort(数组):
如果len(数组)<2:
返回数组
头,*尾=数组
less=qsort([如果项目<头部,则尾部项目对应项目])
更多=qsort([如果项目>=头部,则尾部项目对应项目])
返回更少+[头]+更多

为什么不能使用
排序
?实际上,只需一个参数
n
(正整数)就可以正常工作,它将返回一个从0到
n-1
的所有整数的列表(或Python 3.x中的延迟计算迭代器)。在本例中,
range
之后不需要冒号,因为它是一个。