(Using Python 2.7)
Hello,
I\'ve two version of a class PairOfDice.
1.) This one is not working and throws an error.
TypeErro
In the first class total
is a function as well as an attribute of the class. That is not okay :) Python thinks that the total you are referring to in the final line is the integer variable total and not the function.
It is considered a good practice to name the function total
as get_total
instead
This is because you have a property called total, as well as a function called total
. When you run roll
, you are overwriting the class's definition of total
.
In other words, before you run roll
, player1.total
is a function. However, once you run roll, you set player1.total
to be a number. From then on, when you reference player1.total
, you are referring to that number.
You might want to rename the total
function to something like getTotal
, or something similar.