Бозӣ
Ин лоиҳа аст, на масъалаи довар. Касе онро ғайр аз шумо ва лаборатория намесанҷад. Дар довар паёме мисли input("Where to? ") ба баромади шумо ҳамроҳ мешавад ва «Ҷавоби нодуруст» медиҳад. Дар бозӣ баръакс чунин паём лозим аст: барнома паёмҳо менависад ва бозингар ҷавоб медиҳад.
Ҳикоя кӯтоҳ аст. Шумо дар толори хонаи кӯҳна истодаед. Ду дар ҳаст: яке ба боғ, дигаре ба таҳхона. Дари таҳхона қуфл аст ва паси он сандуқ аст. Калид дар боғ, зери санг мехобад. То шаб шудан шаш ҳаракат доред.
Инак бозие, ки бо барномаи тайёр бозӣ шудааст. Матни баъд аз Where to? он аст, ки бозингар навиштааст:
Чӣ тавр кор мекунад
Ҳар ҳуҷра функсия аст. Он он чиро, ки бозингар мебинад, чоп мекунад, метавонад ҳолати бозиро тағйир диҳад ва номи ҳуҷраи навбатиро бармегардонад. Тамоми ғоя ҳамин аст. Даври кӯтоҳ бозиро идома медиҳад:
Калимаи "exit" ҳуҷра нест. Он имвор барои қатъ кардан аст. Ҳолате, ки бояд аз як ҳуҷра зиёдтар зиндагӣ кунад, масалан, калид, дар рӯйхати bag берун аз функсияҳо меистад. Функсия метавонад ба рӯйхат бе сатри global илова кунад: bag.append("key").
Панҷ марҳила
Ҳар марҳала як варақа дар лаборатория аст. Онҳоро бо тартиб иҷро кунед. Дар ҳар марҳала қисми тайёр аллакай ҳаст ва санҷишҳои варақа матни баромадро дақиқ, сатр ба сатр, месанҷанд.
- Як ҳуҷра.
hall()-ро нависед: он дарҳоро нишон медиҳад, калимае мехонад ва ҳуҷраи навбатиро бармегардонад. - Ҳуҷраҳо ва давр.
cellar()ва даври болоиро нависед. Дар толор метавонедquitнависед. - Халта. Боғ калидро як бор медиҳад. Таҳхона танҳо бо калид кушода мешавад.
- Бурд ё бохт. Давр ҳаракатҳоро мешуморад. Сандуқ дар таҳхона бурд аст. Аз ҳад зиёд ҳаракат бохт аст.
- Санҷишҳо. Сатрҳои
assert-ро барои функсияи ёрирасон нависед, то онҳо хаторо дар нусхаи нодурусти он бигиранд.