我昨天编写了这段代码,试图测试Python生成的随机数到底有多随机:
# -*- coding: cp1252 -*-
import random
print "Bienvenido al Analizador del Azar, este programa generará 100 números para aleatorios, para luego dar en tanto por ciento la cantidad de cada uno."
numeros_aleatorios = []
contador = 0
while True:
namber = random.randint(1,10)
numeros_aleatorios.append(namber)
contador += 1
if contador == 100:
break
PR1 = float(numeros_aleatorios.count(1)) / 100
PR2 = float(numeros_aleatorios.count(2))/ 100
PR3 = float(numeros_aleatorios.count(3)) / 100
PR4 = float(numeros_aleatorios.count(4)) / 100
PR5 = float(numeros_aleatorios.count(5)) / 100
PR6 = float(numeros_aleatorios.count(6)) / 100
PR7 = float(numeros_aleatorios.count(7)) / 100
PR8 = float(numeros_aleatorios.count(8)) / 100
PR9 = float(numeros_aleatorios.count(9)) / 100
PR10 = float(numeros_aleatorios.count(10)) / 100
print "Hay exactamente un", PR1, "% de 1s"
print "Hay exactamente un", PR2, "% de 2s"
print "Hay exactamente un", PR3, "% de 3s"
print "Hay exactamente un", PR4, "% de 4s"
print "Hay exactamente un", PR5, "% de 5s"
print "Hay exactamente un", PR6, "% de 6s"
print "Hay exactamente un", PR7, "% de 7s"
print "Hay exactamente un", PR8, "% de 8s"
print "Hay exactamente un", PR9, "% de 9s"
print "Hay exactamente un", PR10, "% de 10s"
如你所见,我必须把PR1,PR2,PR3。。。手动使每个百分比,然后写入每个打印以显示结果。我的问题是,有没有办法让它更自动化,这样我就不用独立地写每一行了?这对我的下一个项目非常有用。你知道吗
一个collections.Counter将为您完成所有计数,并使用
range
循环您想要运行的试验数:输出:
不知道是否正确的顺序!你知道吗
相关问题 更多 >
编程相关推荐