python - 在python中查找所有字符与其他单词匹配的单词

标签 python

像 umbellar = umbrella 都是等同的词。

输入 = ["umbellar","goa","umbrella","ago","aery","alem","ayre","gnu","eyra","egma","game", "leam","amel","year","meal","yare","gun","alme","ung","male","lame","mela","mage"]

所以输出应该是:

输出=[ [“伞”,“伞”], [“前”,“果阿”], ["aery","ayre","eyra","yare","year"], ["alem","alme","amel","lame","leam","male","meal","mela"], [“gnu”,“枪”,“ung”] [“egma”,“游戏”,“法师”], ]

最佳答案


from itertools import groupby

def group_words(word_list):
    sorted_words = sorted(word_list, key=sorted)
    grouped_words = groupby(sorted_words, sorted)
    for key, words in grouped_words:
        group = list(words)
        if len(group) > 1:
            yield group

例子:

>>> group_words(["umbellar","goa","umbrella","ago","aery","alem","ayre","gnu","eyra","egma","game","leam","amel","year","meal","yare","gun","alme","ung","male","lame","mela","mage" ])
<generator object group_words at 0x0297B5F8>
>>> list(_)
[['umbellar', 'umbrella'], ['egma', 'game', 'mage'], ['alem', 'leam', 'amel', 'meal', 'alme', 'male', 'lame', 'mela'], ['aery', 'ayre', 'eyra', 'year', 'yare'], ['goa', 'ago'], ['gnu', 'gun', 'ung']]

关于python - 在python中查找所有字符与其他单词匹配的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4906673/

相关文章:

python - devpi:手动上传toxresult.json

python - 启用左右(顶部和底部) Bokeh y (x) 轴刻度

python - 无法与 GeoDjango 合并范围聚合

python - 用户定义的通用类型和 collections.abc

python - Django 博客管理

Python flask : search MySQL start with an alphabet

python - 数组更改条目,尽管没有代码这样做......它是什么?

python - 递增 Py_True/Py_False refcount 总是必要的吗?

python - "TypeError: string indices must be integers"尝试在 python 中制作二维数组时

python - 使用记忆化的递归算法