python,从字典创建一个随机句子生成器

时间:2018-03-07 05:28:04

标签: python

def sentence_generator(filename, length=10):

    random.seed(1)  # Set the seed for the random generator - do not remove

    my_tuple1 = learn(filename)
    sorted_word_list = sorted(my_tuple1[1])

    i = 0
    while True:
        word = random.choice(sorted_word_list)
        word1 = ""
        for i in range(length):
            word1 = word1 + " " + str(word)
            next_word = my_tuple1[1].get(word)  # Returns None if not found
            if not next_word:
                next_word = my_tuple1[0]  # Fallback to '' if not found
            word = random.choice(next_word)
            i = i + 1
        yield word1

所以这是我到目前为止的代码,我试图创建一个随机句子生成器,它接受字典的键(这是一个单词),然后下一个单词将是该键的值。然后循环不断重复。学习返回一个元组(单词,字典)。如果密钥没有值,将使用该字。此外,参数(默认为10)表示句子应该多长时间,因此for循环。我只是需要一点帮助才能进入创建发电机的正确方向,因为我有点迷失了。

0 个答案:

没有答案