Python:在没有空格的字符串中查找单词

时间:2016-11-14 11:08:55

标签: python string iteration

我试图创建一个函数来查找没有空格的字符串中的单词:' Daysaregood' 。 我迭代每个字母,直到我通过比较基于已经迭代的字母的列表,使用附魔模块附魔来查找该单词是否存在。 这就是我的尝试:

import enchant
import time


fulltext =[]
def work(out):

        if len(out)>0:


            word = ''
            wd = ""
            # iterate for every Letter
            for i in out:
                word = word + i
                print word
                d = enchant.Dict('en_US')
                # a list of words to compare to
                list = d.suggest(word.title())
                print list
                #check if word exists
                if word.title() in list  :
                    print 'Word found'
                    wd = word
                else:
                    print 'Word not found'



            print '\n'+wd
            fulltext.append(str(wd))

            time.sleep(2)
            work(out[len(wd):])
        else:
            print '\n fulltext : '
            print fulltext



word="Daysaregood"
work(word)

现在对于这个文本,脚本像我想要的那样运行,我得到一个这样的列表: [' Days','',' good']。 但是当我尝试类似“太空船”的事情时,这个功能会与“空间”相混淆。并且为这些' s'在'穿梭'所以我明白了: ['空格'' hut'' t',' l',' e']。 我的目标是单独返回每个单词并将它们存储到列表中。 任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:3)

您的任务的问题是所需的输出本身不遵循严格的规则。如果您要输入'pineapple',您会期望['pine', 'apple']还是['pineapple']?要预测这一点是相当困难/不可能的。