(mit Python 2.7)Python - Typeerror: 'int' Objekt ist nicht aufrufbar
Hallo,
Ich habe zwei Version einer Klasse PairOfDice.
1.) Dieser funktioniert nicht und gibt einen Fehler aus.
TypeError: 'int' object is not callable
import random
class PairOfDice:
""" Represent the Pair of Dices and have method which tells the total of those roles.
"""
def roll(self):
self.total = random.randint(1, 6) + random.randint(1, 6)
def total(self):
return self.total
def name(self, name):
self.name = name
def getName(self):
return self.name
player1 = PairOfDice()
player1.roll()
print player1.total()
2) Dieser arbeitet.
import random
class PairOfDice:
""" Represent the Pair of Dices and have method which tells the total of those roles.
"""
def roll(self):
self.roll1 = random.randint(1, 6)
self.roll2 = random.randint(1, 6)
def total(self):
return self.roll1 + self.roll2
def name(self, name):
self.name = name
def getName(self):
return self.name
player1 = PairOfDice()
player1.roll()
print player1.total()
Kann bitte jemand erklären, was mit dem ersten falsch ist?
Dank
Das Zuweisen eines Werts zu "self.total" überschreibt die Methode 'self.total'; Sie rufen diese Nummer in der letzten Zeile des ersten Beispiels an. Eine Klasseninstanz hat nur einen Namespace, der sowohl Werte als auch Methoden enthält. – jasonharper