Когда вы запускаете команду die = random.randint(0, 6)
, вы говорите Python: «Используйте функцию random.randint()
, чтобы выбрать случайное целое число от 1 до 6, а затем установите переменную с именем die
равной целому числу, котороебыл выбран ".Как только это будет сделано, остальная часть вашего кода ничего не сделает для обновления значения die
.Это означает, что print(die)
в цикле будет продолжать печатать то значение, которое было ему изначально присвоено.Другими словами, команда die = random.randint(0, 6)
не означает «Повторно выполнить команду random.randint(0, 6)
и получать другое случайное число каждый раз, когда я ссылаюсь на die
».Скорее, die
- это просто некоторая переменная с определенным постоянным значением.
Поскольку random.randint()
- это то, что генерирует фактическое число, один из способов продолжать обновлять die
- просто перемещать имеющуюся командуза пределами цикла внутрь цикла:
while answer == "yes" or answer == "y":
print(roll)
die = random.randint(0, 6) # Generate a new random number, then assign it to 'die'
time.sleep(2)
print(die)
answer = input("Want to play again?")
На самом деле, если вы ничего не делаете с числом, отличным от его печати, вы можете вообще забыть использовать переменную и просто вставитьrandom.randint()
команда внутри вашей print
команды:
while answer == "yes" or answer == "y":
print(roll)
time.sleep(2)
print(random.randint(0, 6))
answer = input("Want to play again?")