Static Type Checking
Siz Mypy haqida bir nechta marta eslatmalarni ko‘rgan bo‘lishingiz mumkin.
Statik Tip Tekshiruvi
Siz Mypy haqida bir nechta marta eslatmalarni ko‘rgan bo‘lishingiz mumkin. Buning haqida to‘liq ma'lumotni quyidagi manzilda o‘qishingiz mumkin: • http://mypy-lang.org/
Agar siz Mypy-ni o‘z kodingizda ishlatishni xohlasangiz, avval uni pip yordamida o‘rnatishingiz kerak:
Mypy o‘rnatilganidan so‘ng, uni quyidagi tarzda ishga tushirishingiz mumkin:
Mypy sizning kodingizni tahlil qilib, topilgan har qanday tip xatolarini chiqaradi. Mypy bu ishni kodni ishlatmasdan, faqat manba fayllaringizni o‘qib va tahlil qilib amalga oshiradi. Bu jarayonni statik tekshirish deb ataladi. Ko‘plab linternlar ham statik tekshirishdan foydalanadi, lekin ular odatda sintaksis xatolarini, ishlatilmagan yoki yo‘q o‘zgaruvchilarni va boshqa muammolarni izlaydi, bu esa kodingizning ishlashiga to‘sqinlik qiladi.
Agar dasturingizda tip izohlar bo‘lmasa, Mypy hech qanday xato xabarini chiqaradi.
Keling, noto‘g‘ri tip izohlariga ega bo‘lgan bir funktsiya yozaylik va uni bad_type_hinting.py nomli faylga saqlaylik:
Endi sizda kod bor, uni Mypy yordamida tekshirishingiz mumkin:
Bu chiqish xabari sizga 4-satrda muammo borligini aytadi. String-larda keys()
atributi mavjud emas.
Endi kodni yangilab, mavjud bo‘lmagan keys()
metodini olib tashlaymiz. O‘zgartirishlarni bad_type_hinting2.py nomli yangi faylga saqlaymiz:
Endi Mypy-ni yangilangan faylga qarshi ishga tushirib, muammoni hal qilganmisiz, tekshirib ko‘rishingiz mumkin:
Oops! Yana bir xato mavjud. Endi siz bu funktsiyaning hech qanday qiymat qaytarmasligini kutganingizni bilasiz. Kodni shunday tuzishingiz mumkin, shunda u hech narsa qaytarmaydi, yoki tip izohini tuzatib, string qaytaradigan qilib yozishingiz mumkin.
Siz ikkinchi usulni tanlab, quyidagi kodni good_type_hinting.py nomli faylga saqlang:
Endi Mypy-ni bu yangi faylga qarshi ishga tushiring:
Bu safar kodingizda hech qanday muammo topilmadi!
Siz Mypy-ni bir nechta fayllar yoki butun papkaga qarshi ishga tushirishingiz mumkin. Agar siz kodlaringizda tip izohlarini ishlatishga qat'iy qaror qilsangiz, Mypy-ni tez-tez ishga tushirib, kodingizda xatolar yo‘qligini tekshirib turishingiz kerak.
Last updated on