我必须编写一个函数,该函数需要2个变量,即一个句子和一个数字。该函数应返回等于或大于数字的字符串中唯一词的数量。示例结果应为:

>>> unique_func("The sky is blue and the ocean is also blue.",3)
    6


我能想到的解决方案是

def unique_func(sentence,number):
    sentence_split = sentence.lower().split()
    for w in sentence_split:
        if len(w) >= number:


现在我不知道如何继续我的解决方案。谁能帮我?

最佳答案

尝试这个:

from string import punctuation

def unique_func(sentence, number):
    cnt = 0
    sentence = sentence.translate(None, punctuation).lower()
    for w in set(sentence.split()):
        if len(w) >= number:
            cnt += 1
    return cnt


要么:

def unique_func(sentence, number):
    sentence = sentence.translate(None, punctuation).lower()
    return len([w for w in set(sentence.split()) if len(w) >= number])

关于python - 计算字符串中最小长度的唯一单词,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16051777/

10-14 15:21