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