侮辱发电机错了

时间:2016-05-27 09:59:00

标签: python python-3.x

我正在为类创建一个insult生成器,它使用名为allWords的元组中三个列表中的一个单词。出于某种原因,当我的generateInsult()函数产生侮辱时,我的generateInsults()函数会生成"Thou A l l!"

有人知道发生了什么吗?

这是相关代码

def generateInsult(word='allWords'):
    insult = "Thou " + random.choice(word[0]) + " " + random.choice(word[1]) + " " + random.choice(word[2]) + "!"
    return insult

def generateInsults(word='allWords'):
    insults = list()
    for i in range(100):
        insults.append(generateInsult('AllWords'))
    return insults

2 个答案:

答案 0 :(得分:1)

我知道你有一个名为allWords的3元组列表。您应该删除默认参数周围的引号,即更改以下行:

def generateInsult(word=allWords):
    ...

def generateInsults(word=allWords):
    ...
    insults.append(generateInsult(word))

答案 1 :(得分:0)

你从一个角色中随机选择。

索引为零的字符,索引为1的字符和索引为2的字符。