使用while循环生成随机值:重复自身的随机值

时间:2019-09-05 17:40:05

标签: python-3.x while-loop

我正在制作一个程序,该程序在其中的一部分中半随机生成一个字符串,我随机生成一个字符串的长度,然后混合使用生成随机字符和随机单词,直到达到该长度:问题是何时只要它生成一个随机单词或随机字符串就运行它,就不会再次重新生成它,而是使用先前生成的相同单词。

我曾尝试以许多不同的方式重写代码,但每次都遇到这个问题。我也找不到任何对我有帮助的东西。

    rand5 = random.randrange(1, 5)
    while run < rand5:

        if random.randrange(1, 3) == 1:
            search_item_part = generate_word() + " "

        else:
            print(2)
            rand7 = random.randrange(2, 9)
            while run1 <= rand7:
                search_item_part += random.choice(letters_characters)
                run1 += 1
                if run1 == rand7:
                    search_item_part += " "
        search_item += search_item_part
        run += 1
    return search_item

我希望输出是不同的单词和字符串,但最终它们是这样的:

“囊尾rc病囊尾Ca病CaE6k囊尾rc病CaE6k” “ nY3J KnY3J KnY3J Kpriming” 'F jQel iF jQel iF jQel i'

1 个答案:

答案 0 :(得分:0)

如果每次都需要不同的单词和字符串,那么我建议将随机生成的单词保存到列表中。然后,添加检查以确保新生成的单词不在该列表中。这样,您每次都会得到一个新单词。

相关问题