Python 插入预期的2个参数,是否有1个?

Python 插入预期的2个参数,是否有1个?,python,Python,我为掷骰子游戏创建了一个名为“投掷者”的类。它有一个名为掷骰子的方法,该方法通过五个连续掷骰获得五个随机数。然后它将返回数字列表。但是,当我运行代码时,它返回一个类型错误,insert方法(代码示例的最后一行)需要两个参数,但最终得到一个。为什么会这样 class Thrower: def __init__(self): self.dice = [] def throw_dice(self): for _ in range(0,6):

我为掷骰子游戏创建了一个名为“投掷者”的类。它有一个名为掷骰子的方法,该方法通过五个连续掷骰获得五个随机数。然后它将返回数字列表。但是,当我运行代码时,它返回一个类型错误,insert方法(代码示例的最后一行)需要两个参数,但最终得到一个。为什么会这样

class Thrower:
    def __init__(self):
        self.dice = []

    def throw_dice(self):
        for _ in range(0,6):
            random_num = random.randint(0,6)
            self.dice = self.dice.insert(random_num)

(1) 你检查文件了吗<代码>列表。插入需要插入的内容和插入位置。(2)
list.insert
修改列表并不返回任何内容,因此在第一次循环后,
self.dice
将等于
None
。(3)
范围(0,6)
将循环6次,而不是5次。你想要
range(5)
@TimRoberts我该如何修改我的代码,使其不会返回任何值?@KendrickJudeMausisa——将行从
self.dice=self.dice.insert(random_num)
更改为
self.dice.insert(len(self.dice),random_num)
。然后在for循环之后,添加行
return self.dice
。该规范实际上并不需要类
dice=[random.randint(1,6)for uu in range(5)]
完成所有操作。@kendrickjudemusisa如果要在列表数据结构中收集数字,最好使用append函数<代码>自我.骰子.追加(随机数)