目前下面的代码是有效的,但是我应该有一个疾病因素和一个人口数量触发器来配合它。基本上,青少年和老年人都会受到疾病的影响,但只有当总人口达到用户设定的“触发点”时。我不知道该怎么做,好像我在while循环中添加了一个额外的子句,但总体上不满足,我可以创建另一个while循环来使用,但是生成/计数器的事情就不起作用了。 顺便说一句,代码开头的内容与我正在使用的类有关,忽略它。在
print ("This is where you run the python model")
adult_population = Gen0.adult_population
birth_rate = Gen0.birth_rate
juvenile_population = Gen0.juvenile_population
juvenile_survival = Gen0.juvenile_survival
adult_population = Gen0.adult_population
adult_survival = Gen0.adult_survival
senile_population = Gen0.senile_population
senile_survival = Gen0.senile_survival
disease = Gen0.disease
disease_trigger = Gen0.disease_trigger
generations = Gen0.generations
counter = 0
while counter < generations:
new_juvenile_population = adult_population * birth_rate
new_adult_population = juvenile_population * juvenile_survival
new_senile_population = (adult_population * adult_survival) + (senile_population * senile_survival)
new_total = new_juvenile_population + new_adult_population + new_senile_population
print("Juveniles:" ,new_juvenile_population)
print("Adults:" ,new_adult_population)
print("Seniles:" ,new_senile_population)
print("Total population:" ,new_total)
juvenile_population = new_juvenile_population
adult_population = new_adult_population
senile_population = new_senile_population
counter += 1
在您的
while
循环中,只需将说明疾病影响的代码行放在if
块中,否则通常的总体在while循环的每次迭代中都保持正常的总体更新,但将它们保持在if
块之外。在我猜这就是你要的。在
相关问题 更多 >
编程相关推荐