import csv import random myFile = open('batedores.csv') lines = csv.reader(myFile) lines = list(lines) myFile.close() random.seed(16) #Para cada batedor lista = [] for line in lines[1:]: probEsq = float(line[2]) probDir = round(1 - probEsq, 2) gols = 0 defesas = 0 #Simulando 100000 penaltis probEsqGoleiro = 1 if(probEsq < 0.43): probEsqGoleiro = 0 for i in range(0, 100000): chute = random.uniform(0, 1); defesa = random.uniform(0, 1); dir_chute = 'esquerda' dir_defesa = 'esquerda' if chute > probEsq: dir_chute = 'direita' if defesa > probEsqGoleiro: dir_defesa = 'direita' #print(line[1] + " Chutou para " + dir_chute + " goleiro chutou para " + dir_defesa) if dir_chute == dir_defesa: defesas += 1 else: #se chutou para a direita #ainda tem a chance do perna de pau errar if(dir_chute == 'direita' and random.uniform(0, 1) < 0.25): defesas += 1 else: gols += 1 lista.append((probEsq, defesas, gols, line[1])) lista.sort(key=lambda a: a[2]) for i in lista: print(i[3] + "\t marcou " + str(i[2]) + " e perdeu " + str(i[1]) + " com a estrategia (" + str("{:.2f}".format(i[0])) + ", " + str("{:.2f}".format(1-i[0])) + ")")