我无法弄清楚如何让我的程序跟踪生成的随机数总数,并在数字加起来时让我的程序停止。
for x in range(0,times):
###but maybe a while loop?
table=[0 for i in range (21)]
import random
for d1 in range(21):
if table1[d1]:
table[d1] = random.expovariate(gamma_val)
else:
table[d1] = random.expovariate(1/gamma_val)
mn= min(table) ####selects minimum value of table which i use in rest of program##
###program goes on to do some biology thing###
我希望一旦mn的总数(从表中选择的最小数量)加起来一定值就结束循环
答案 0 :(得分:1)
我的水晶球告诉我你想要:
total = 0.0
while total < 10000.0:
... # your code
total += mn
答案 1 :(得分:0)
从我收集的内容中你可能想尝试这样的事情:
import random
table = [0.0 for i in xrange(0, 21)]
while sum(table) < 10000.0:
for i in xrange(0, len(table)):
if table1[i] > 0:
table[i] = random.expovariate(gamma_val)
else:
table[i] = random.expovariate(1/gamma_val)
mn = min(table)
关键见解:导入一次,明智地使用循环条件。
我不知道您是使用Python 2还是Python 3,因此语法可能会有所不同。此外,如果您能够更清楚地解释您的问题,您可能会得到更好的答案。