ترتیب try/except/else/finally رو با ردپای متنی میبینیم. age_trace(text) فهرست رویدادها رو برمیگردونه. در try متن رو با int تبدیل کن؛ اگه سن منفی بود با raise ValueError("negative age") خطا بساز. در except ValueError رویداد "invalid" رو اضافه کن. در else فقط برای موفقیت "accepted" اضافه بشه. در finally همیشه "finished" اضافه کن. return بعد از ساختار باشه.
برای "18" پاسخ ["accepted", "finished"] و برای "oops" یا "-1" پاسخ ["invalid", "finished"] هست. finally اینجا ردپا میسازه؛ در برنامهٔ واقعی ممکن هست منبع بازشده رو ببندد.
کد اولیه همه رو پذیرفته حساب میکنه. هدف پیدا کردن جای درست سه مسیر هست.
فعالیت شما
با raise قانون سن رو اعمال کن و ردپای مسیرها رو بساز.