DRY prinsipi va Pythonda funksiyalar (def)
Bir xil kodni ko'p joyga nusxalash tez, lekin xavfli. Bugun DRY prinsipini va funksiyalarni o'rganamiz: formulani bir marta yozib, hamma joyda ishlatamiz.
Haftada 3 ta dars. Slaydlarni oching va darsning o'quvchi sahifasida qo'shimcha ma'lumot hamda topshiriqlarni toping.
Bir xil kodni ko'p joyga nusxalash tez, lekin xavfli. Bugun DRY prinsipini va funksiyalarni o'rganamiz: formulani bir marta yozib, hamma joyda ishlatamiz.
Foydalanuvchi har doim ham to'g'ri qiymat kiritmaydi, fayl esa yo'q bo'lishi mumkin. Bugun xatolarga qo'rqmasdan, ularni boshqarishni o'rganamiz: dastur yiqilmaydi, foydalanuvchi esa tushunarli xabar oladi.
Dastur o'chsa, o'zgaruvchilardagi ma'lumot yo'qoladi. Bugun ma'lumotni faylga saqlashni va qayta o'qishni o'rganamiz, 16–17-darslardagi funksiyalar va try/except bilan «Kundalik» dasturini yozamiz.
Fan: Advanced Back-end va DevOps
Sinf: 9-sinf
Hafta: 6-hafta
Topshirish muddati: Keyingi darsga qadar (7-hafta, 1-dars)
chegirma(narx, foiz) funksiyasiga aylantirib, DRY ko'rinishiga keltiring.format_user(ism, yosh) funksiyasini yozing va 5 ta odam uchun chaqiring.if/elif bilan, so'ng dict bilan yozing va ikkala usulni solishtiring.yigindi, ayirma, kopaytma, bolinma funksiyalarini yozing va har birini 2 marta chaqiring.ValueError ni ushlab, tushunarli xabar bering va dasturni to'xtatmang.ValueError va ZeroDivisionError ni alohida ushlang; else va finally dan foydalaning.yosh_ol() funksiyasini yozing.yozuv_qosh() va yozuvlar() funksiyalarini yozing; kundalik.txt ga 3 ta yozuv qo'shib, ularni raqamlab chiqaring.FileNotFoundError ni try/except bilan boshqaring va tushunchali xabar bering.w va a rejimlarini bitta faylda sinab, natija farqini daftarga yozing.| Mezon | Ball |
|---|---|
| 16-dars: DRY va funksiyalar: chegirma, salomlashuv | 3 |
| 17-dars: Xavfsiz kalkulyator va kiritishni tekshirish | 3 |
| 18-dars: «Kundalik» dasturi: faylga yozish va o'qish | 2 |
| Toza, o'z vaqtida va mustaqil bajarilgan | 2 |
| Jami | 10 |
| Bonus: bonus darajadagi topshiriq | +2 |