Typeerror:object .__ new __()不带参数(帮助)

时间:2013-11-06 19:38:02

标签: python typeerror

我只是想制作一个生成骰子的代码(在python中)。 这是代码:

import random

class Dice:
     def _init_(self, number_dice):
          self._dice = [6] * number_dice

     def roll_dice(self):
          for d in range(len(self._dice)):
               self._dice[d] = random.randit(1, 6)
          self._dice.sort()

     def print_roll(self):
          length = len(self._dice)
          print(str(lenth) + "dice:" + str(self._dice))



my_dice = Dice(2)
my_dice.roll_dice()
my_dice.print_roll()

编译器对第18行说了些什么。 我是编程的新手,所以任何事情都有帮助=]

2 个答案:

答案 0 :(得分:11)

__init__

之前和之后,您需要两个下划线
def __init__(self, number_dice):
    self._dice= [6] *number_dice

否则,Python将该方法视为自定义方法,而不是特殊的__init__构造方法。

答案 1 :(得分:5)

您应该将_init_替换为__init__