Линия
die%i = random.randint(1,6)%index
Недопустимый синтаксис Python. Это двоюродный брат несколько строк ниже:
total = die%i + die%i
не даст вам ожидаемых результатов; %
будут рассматриваться как операторы модов. Этот цикл должен выглядеть примерно так:
for die in range(theLength):
val = random.randint(1,6)
print '<img src = "Images/dice-%i.gif" alt="%i" width="107" height="107" />' % (val, val)
Даже с этими изменениями это все равно будет исключение, потому что sum
является неопределенной переменной, когда вы используете ее для печати итогов. Вы должны будете отслеживать это в своей «петле ролла».
sum = 0
for die in range(theLength):
val = random.randint(1,6)
print "<img src = 'Images/dice-%i.gif" alt="%i" width="107" height="107" />' % (val, val)
total = total + val