按出现顺序和字母顺序对列表进行排序

芮C

我试图将一个句子放在列表上,然后按单词在列表上的出现对列表进行排序,如果有必要,当两个单词出现的次数相同时,请按字母顺序对列表进行排序。我写了这段代码:

def frequencia(texto):
    pals = texto.split()
    m = sorted(pals,key=pals.count,reverse=True)
    return m

问题在于它重复了单词并且不应用字母顺序。在“我是男的,我饿了”这句话上,输出应为['am','I','a','guy','hungry']

汤姆

请尝试以下方法:

sentence = 'I am a guy and I am hungry'

words = sentence.split(' ')
sortedwords = sorted(set(words), key=lambda x: (-words.count(x), x.lower()))
#  ['am', 'I', 'a', 'and', 'guy', 'hungry']

使用set以获得独特的词语的输入。然后,对它们进行排序,并以出现tuple次数最多的优先级(计数为负,最频繁出现的值具有最大负数,并首先进行排序),然后按字母顺序排序(lower()用于使大写和小写字母等效)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

按字母顺序对链接列表进行排序

按字母顺序对多个列表进行排序

按项目对列表进行排序,按字母顺序排序

按字母顺序对文本中的字母出现进行排序

在C中按字母顺序对链接列表进行排序

按字母顺序对列表对象值进行排序

如何按字母顺序对字符串列表进行排序?

如何使用jQuery按字母顺序对列表进行排序?

按字母顺序对列表中的文本范围进行排序

按字母顺序对 v-for 列表进行排序

使用compareTo()方法按字母顺序对列表进行排序

如何按字母顺序对列表视图进行排序

如何使用 QSortFilterProxyModel 按字母顺序对列表项进行排序?

如何按字母顺序对列表视图进行排序?

按字母顺序对数组列表进行排序

在 kotlin 中按字母顺序对列表进行排序

按字母顺序对列表中的项目进行排序

Flutter:考虑“重音字符”,按字母顺序对列表进行排序

按首字母顺序按字母顺序对对象进行排序和分组

按数据属性(按字母顺序,然后按数字顺序)对列表项进行排序

如何按字母顺序和最高编号对列表中的字典进行排序

按字母顺序和部分对NSFetchedResultsController进行排序

按长度和字母顺序对行进行排序

Javascript按日期和字母顺序对数组进行排序

按字母顺序对表格进行排序和分类

如何按字母顺序对字母进行反向排序,但是如果出现的次数多,则按字母顺序对其排序?

按出现次数最少的顺序对列表进行排序

按字母顺序对JComboBox元素进行排序

PHP:按字母顺序对 ZIP 进行排序