Как создать повтор для вызова метода класса Python
В коде ниже есть класс Dice(), который задает обычный шестигранный кубик, в нем метод roll_dice(), выбрасывающий случайное число от 1 до 6. У меня было задание вызвать roll_dice() 10 раз. Вопрос: как можно сократить этот код, чтобы не нужно было целых 10 строчек одно и то же писать (и если понадобится изменить кол-во бросков, не пришлось это всё каждый раз удалять/добавлять)? Может можно как-то с помощью цикла это провернуть, а результаты бросков в список заносить? Может еще один метод создать нужно?
from random import randint
class Dice():
def __init__(self):
self.sides = 6
def roll_dice(self):
number = randint(1, self.sides)
print(number)
print('Первый кубик:')
dice1 = Dice()
dice1.roll_dice()
dice1.roll_dice()
dice1.roll_dice()
dice1.roll_dice()
dice1.roll_dice()
dice1.roll_dice()
dice1.roll_dice()
dice1.roll_dice()
dice1.roll_dice()
dice1.roll_dice()
Ответы (1 шт):
Автор решения: Dmitry
→ Ссылка
Пример для десяти бросков
from random import randint
class Dice():
def __init__(self):
self.sides = 6
def roll_dice(self):
number = randint(1, self.sides)
# print(number)
return number
print('Первый кубик:')
dice1 = Dice()
for i in range(10):
print(f"Бросок номер {i+1}, выпало {dice1.roll_dice()}")
в функции print() убрал, не хорошо это)
Вывод
Бросок номер 1, выпало 4
Бросок номер 2, выпало 1
Бросок номер 3, выпало 1
Бросок номер 4, выпало 2
Бросок номер 5, выпало 6
Бросок номер 6, выпало 5
Бросок номер 7, выпало 4
Бросок номер 8, выпало 3
Бросок номер 9, выпало 6
Бросок номер 10, выпало 4