У меня есть один из «тех» дней, и все, что я смотрю, просто испортилось.Увеличение значения внутри элемента списка
У меня есть класс Die (как в Dice), и я хочу перевернуть 100 из них и подсчитать количество каждого числа. Скажем, из 100 кубиков 40 было числом «6».
Проблема в том, что если я жестко задал вопрос, если лицо_значение == 1 тип решения - если кто-то изменит количество лиц на кубике - у меня есть проблема - как они не будут считать их.
Я думал, что лучший способ учесть это - составить список (размер которого совпадает с возможными гранями) и увеличить число внутри списка в каждом случае.
Одним словом, как я могу увеличить значение внутри каждого элемента списка?
diceList = [ Die() for q in range(100)]
import random class Die: face_value = 1 size = 6 def getSize(self): return self.size def getFaceValue(self): return self.face_value def roll(self): self.face_value = random.randint(1, self.size)
def rollList(n): i = 0 a = n[0].getSize() faceList = [0] * a for Die in n: n[i].roll() x = n[i].getFaceValue() print(n[i].face_value) #faceList[x-1] = 1+1 #print(faceList) i += 1
Я переработал его немного, и у меня есть способ получить ответ - я не уверен, если это особенно хороший способ делать это все же.
def rollList(n): i = 0 faceList = [] a = n[0].getSize() for Die in n: n[i].roll() x = n[i].getFaceValue() faceList.append(x) i += 1 print(faceList) c = 1 while a >= c: print(faceList.count(c)) c += 1
Я изо всех сил, потому что я поставил faceList [х-1] = 1 + = 1 вместо faceList [х-1] + = 1. Спасибо, очень много :) – Ollie