[英]python: simulation termination
我只是有一個簡單的問題,對於以下模擬,如果發生一個事件,可以說出生會自動增加time_elapsed,還是會死亡並檢查死亡會發生並這樣做?
while time_elapsed < end_time :
event=birth () +death () +infection()
choice=random.random()*event
choice -= birth()
time_elapsed += random.expovariate(event)
if choice < 0 :
do_birth()
continue
choice -= death()
if choice < 0:
do_death()
continue
choice -= total_infection_rate()
if choice < 0:
do_infection()
continue
在上面的代碼中,它將檢查所有條件語句,直到任何一個條件的值為True
為止。 如果是這樣,它將執行該塊中的代碼,然后continue
將跳回到循環的開始,跳過所有其他if
語句(無論它們是否為True
)。 如果您只想執行其中一種情況,則可以按照以下步驟進行:
if number >= 0:
print('Number is positive')
else:
print('Number is negative')
在這里,python將評估if number >= 0
塊,如果它是True
,它將打印出'Number is positive'
,然后跳過else
語句。 如果if number >= 0
塊的評估結果為False
,則python將簡單地在else
塊中執行代碼,然后繼續進行。
對於更詳細的情況,您也可以使用elif
。 這是一個類似的示例:
if number > 0:
print('Number is positive')
elif number < 0:
print('Number is negative')
else:
print('Number is 0')
它遵循相同的邏輯。 Python將在該塊的頂部開始,並繼續評估if
/ elif
塊中的每個條件,直到任何條件的值為True
為止,這時它將執行該塊下的代碼,然后跳過該組中的所有其他條件語句。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.