Skip to main content
 首页 » 编程设计

python之反转列表的顺序,然后按字典顺序排序

2025年05月04日10jiqing9006

我需要编写一个代码来对单词列表进行排序,并将它们按词典倒序排列。例如,给定列表 ["harry", "harra", harrb"] 我需要一种方法来反转每个单词,以便列表变为 ["yrrah", "arrah","brrah"]。然后我需要按字典顺序对它进行排序并将其反转回原来的顺序。所以它看起来像 ["harra", "harrb", "harry"]。我从文件“ifile”中获取单词,但对于这段代码,我只对包含一定数量字母“n”的单词进行排序。

到目前为止,这是我的代码:

def getRhymeSortedCount(n,ifile,file): 
    word_list = [] 
    for word in ifile: 
        if len(word) == n: 
            word_list.append(word.strip()) 
    arr = word_list 
    arr.sort(key = lambda x : x[::-1]) 
    ofile.write("\n".join(word_list)) 

它按单词的最后一个字母正确地对单词进行排序,但没有采用字母数 = "n"的单词 我如何更改我的 len 语句以仅获取包含 n 个字母的单词?

请您参考如下方法:

指定排序的key为反转后的字符串

word_list = ["harry","harra", "harrb"] 
word_list.sort(key=lambda str: str[::-1])