Xato xabarini o‘qish va tuzatish
Python xato bersa, xabarning oxirgi qatori eng muhim: u xato turini va sababini aytadi. Undan yuqoridagi qatorlar xato qaysi qatorda yuz berganini ko‘rsatadi.
royxat = [1, 2, 3]
print(royxat[5])NatijaIndexError: list index out of rangeEng ko‘p uchraydigan xatolar: NameError (o‘zgaruvchi e’lon qilinmagan), TypeError (mos kelmaydigan turlar, masalan matn + son), IndexError (ro‘yxatda bunday indeks yo‘q), KeyError (lug‘atda bunday kalit yo‘q). Son matnga str(son) bilan aylanadi; lug‘atda kalit bo‘lmasa ham xatosiz olish uchun lugat.get("kalit", "standart") ishlatiladi.
Sun’iy intellektdan yordam so‘rasangiz, xato xabarini to‘liq, o‘zingiz yozgan kod bilan birga bering. Taklif qilingan tuzatishni ham o‘qing va sinang: u boshqa xatoga olib kelishi mumkin.
Esda tuting
- Xabarning oxirgi qatori — xato turi va sababi.
NameError,TypeError,IndexError,KeyError— eng ko‘p uchraydiganlar.- Tuzatishni ham sinab ko‘ring.
Mashq
print("Yosh: " + 20) qanday xato beradi?
Javob va izoh
TypeError: matnni songa qo‘shib bo‘lmaydi;str(20)kerak. (to‘g‘ri javob)turlar mos emas: matn + son.NameError:printtopilmadi.printmavjud; muammo turlarda.- Xato bermaydi.Python bunday qo‘shishga ruxsat bermaydi.
Kod mashqlari
- Kod ikki xato beradi. Ularni tuzating, natija quyidagicha bo‘lsin:
Ism: Ali,Yosh: 20,Shahar: nomalum(shahar kaliti bo‘lmasa).
Maslahat: Sonni matngastr(...)bilan aylantiring; kalit bo‘lmasaodam.get("shahar", "nomalum")ishlating.
Mashqni ilovada bajaring.
Amaliy vazifa
Ataylab kichik xato qiling (masalan, bo‘lmagan kalitni so‘rang), xato xabarini o‘qing va uni o‘z so‘zingiz bilan tushuntiring.
- Xatoni takrorladim
- Xabarni o‘z so‘zim bilan tushuntirdim
Lug‘at
Interaktiv rejim: qidiruv, progress va Python mashqlari.
