import copy
import random
# Consider using the modules imported above.
class Hat:
def __init__(self, **kwargs):
self.contents = []
print(kwargs)
for i in kwargs:
for j in range(kwargs[i]):
self.contents.append(i)
def draw(self, num):
if num >= len(self.contents):
return self.contents
else:
self.contents = self.contents.copy()
random_selection = []
for i in range(num):
aa = random.choice(self.contents)
random_selection.append(aa)
self.contents.remove(aa)
return random_selection
def experiment(hat, expected_balls, num_balls_drawn, num_experiments):
list_ = []
for key in expected_balls:
for j in range(expected_balls[key]):
list_.append(key)
num_balls_drawn = min(num_balls_drawn, len(hat.contents))
M = 0
for i in range(num_experiments):
ll = copy.deepcopy(hat).draw(num_balls_drawn)
for l in list_:
if l in ll:
ll.remove(l)
if num_balls_drawn - len(ll) == len(list_):
M+=1
return M/num_experiments
確率計算機
おすすめ
転載: blog.csdn.net/u010095372/article/details/129903239
ランキング