我一直致力于一个愚蠢的魔术项目的创建者,利用不同的清单,可以发生的东西,感情,曲线等等。我一直在使用random.choice从这些列表中进行选择,但不知怎么的,生成的项目实际上并不是随机的。
当我连续运行10次时,我会得到如下内容:
一种羽毛,当它主演时,它会引起即将到来的灾难的可怕幻象。 一盏灯,当你舔一个拥有你想要的东西的人时,你会觉得醉了。 一种羽毛,当你舔一个拥有你想要的东西的人时,你会觉得醉了。 一把匕首,当你舔一个拥有你想要的东西的人时,你会觉得醉了。 一种羽毛,当它主演时,它会引起即将到来的灾难的可怕幻象。 一盏灯,当你触摸一个想到你的人时,那盏灯会发亮。 当你舔一个拥有你想要的东西的人时,你会感到醉的书。 当你舔一个拥有你想要的东西的人时,你会感到醉的拐杖 一个大理石,当你舔一个拥有你想要的东西的人时,你会觉得醉了。 当你舔一个拥有你想要的东西的人时,你会觉得醉了。
第一个变量,条目看起来很随机,但从那时起,它开始自我重复,你感到醉了,是一个10+可能性列表的可能性,而舔是从一个列表5。
makesyous = ["sad", "happy", "cold", "warm", "itchy", "laugh", "cough", "sing", "tired", "dizzy", "feel drunk", "uncomfortable", "feel like the opposite gender"]
sences = ["you see", "you smell", "you hear", "you touch", "you lick"]它们都被称为thorugh -一组链接函数(这不是代码中使用的lilts和函数的顺序,这只是为了说明我是如何做事情的)
def generate():
string = "A " + item() + " that " + action()
return string
def item():
x = random.choice(items)
return(x)
def action():
x = random.choice(actions)
return(x)
actions = [short(), makesyou() + " "+ when(), random.choice(dostuff)]
def makesyou():
x = "makes you " + random.choice(makesyous)
return(x)
def when():
x = random.choice(whens) + " " + sence()
return(x)我是不是做错了什么(我知道我的代码结构很糟糕,很抱歉),还是random.choice是故意的呢?
发布于 2017-12-22 08:31:59
khelwoods观察似乎是正确的,这个问题已经通过将其他所有东西都放在generate()函数中解决了,这可能不是最好的解决方案,但它似乎有效。
我现在得到的输出如下
一种硬币,当你闻到一个和你有同样神灵的人时,它会发亮绿色。 每当你触摸敌人时都会发光的硬币钱包。 一种大理石,当你看到一个和你有相同神的人时,它会造成1d2的伤害。 一盏灯,每当你听到有人在想你,它就会发红。 一根手杖,当你舔到一个比你地位更高的人时,你会很伤心。 一盏灯,当命令字说出来时,你就知道命令字了。 每当你舔一个拥有你想要的东西的人时,召唤一个发光的球体进行1d2回合的灯。 一种吊坠,摇动时会产生明亮的红色尘埃,这种灰尘是易燃的。 一根能让你和动物说话的针,但它们只会说一种你不懂的语言。 一种能让摸到它的人感到冷的戒指
所以一次,谢谢你,赫尔伍德,周末项目的救世主!
https://stackoverflow.com/questions/47937813
复制相似问题