Python __初始化()缺少1个必需的位置参数:';价值';不会改变 类骰子: def uuu init uuuu(self,sides=6,value=None): self.sides=sides 自我价值=价值 def辊(自身): self.value=randint(1,self.sides) 回归自我价值 绿蝶类(骰子): 定义初始值(自身、侧面、值): 超级() 超级() faces={1:“
调用类方法时不需要显式传递Python __初始化()缺少1个必需的位置参数:';价值';不会改变 类骰子: def uuu init uuuu(self,sides=6,value=None): self.sides=sides 自我价值=价值 def辊(自身): self.value=randint(1,self.sides) 回归自我价值 绿蝶类(骰子): 定义初始值(自身、侧面、值): 超级() 超级() faces={1:“,python,Python,调用类方法时不需要显式传递self 应该是: class Dice: def __init__(self, sides = 6, value= None): self.sides = sides self.value = value def roll(self): self.value = randint(1, self.sides) return self.value class greenDie(Dice):
self
应该是:
class Dice:
def __init__(self, sides = 6, value= None):
self.sides = sides
self.value = value
def roll(self):
self.value = randint(1, self.sides)
return self.value
class greenDie(Dice):
def __init__(self, sides, value):
super().__init__(self, sides, value)
super().__str__(self,value,faces)
faces = {1: "You don't need to explicit pass self
while calling the class methods.
It should be:
super().__init__(sides, value)
应该如下所示
super().__init__(sides, value)
移除super-super(边,值)中的self-很遗憾,我仍然收到相同的错误消息。你对\uuuu str\uuuu
方法也做了同样的操作吗?是的,我的程序应该模拟僵尸的骰子游戏,使用不同颜色的骰子。因此,当我在另一个类中调用greenDie方法时,就像“runGreen=greenDie(骰子)”那样编写“它无法识别您不应该像runGreen=greenDie(Dice)
那样调用的‘值’,它应该是runGreen=greenDie(sides,value)
,现在它说‘sides’没有定义。