Python Object-Oriented Python Dice Roller RPG Roller

Mathew Yangang
Mathew Yangang
Python Web Development Techdegree Student 4,433 Points

Not sure why my code is not passing

Not sure why my code is not passing, any idea?
import random

class Die:
    def __init__(self, sides=2):
        if sides < 2:
            raise ValueError("Can't have fewer than two sides")
        self.sides = sides
        self.value = random.randint(1, sides)

    def __int__(self):
        return self.value

    def __add__(self, other):
        return int(self) + other

    def __radd__(self, other):
        return self + other

class D20(Die):
    def __init__(self):
class Hand(list):
    def __init__(self, hand):

    def roll(cls,size, die_class=D20):
        for _ in range(size):
        return cls(hand) 

    def total(self):
        return sum(self)

1 Answer

Chris Freeman
Chris Freeman
Treehouse Moderator 54,942 Points

So very close! In you need to import D20 from dice. Otherwise D20 is not defined.

Post back if you need more help. Good luck!