如何让随机元素加入

时间:2018-02-14 00:07:25

标签: python string random choice

elements = ['why','where','what','who','when','how']
for x in range(5):
    length=(random.randint(1,5))
    whatever=""
    for y in range(1,length):
         whatever += elements[random.randint(0,5)]
         print whatever   

我正在尝试使用上面的代码来打印并将列表中的元素组合成包含1到4个音节的随机字符串。现在它一次打印一个音节,然后将它们连接在一起。在字符串达到4个音节后,它会重新启动并再次执行该过程。

这就是它打印的内容:

why
whywhen
whywhenwhere
how
howwhy
howwhywhy
what
whatwhen
whatwhenhow
whatwhenhowwhen

1 个答案:

答案 0 :(得分:0)

试试这个。

elements = ['why','where','what','who','when','how']
for x in range(5):
    length=random.randint(1,5)
    whatever=""
    for y in range(length):
        whatever += elements[random.randint(0,5)]
    print whatever

范围不包括最后一个元素,因此for y in range(1, length)将为您提供长度为1的迭代,而range(length)将为您提供0到长度为1的总共length次迭代。

并且您的print语句需要在循环之外,因此只有在whatever完全构建到length音节时才打印。