Print("Assalom alaykum")



Download 10,21 Mb.
bet49/58
Sana28.06.2022
Hajmi10,21 Mb.
#713027
1   ...   45   46   47   48   49   50   51   52   ...   58
Bog'liq
Mohirdev.uz...

AMALIYOT


  • Ushbu o'zgaruvchini JSON ko'rinishida saqlang va JSON matnini konsolga chiqaring: data = {"Model" : "Malibu", "Rang" : "Qora", "Yil":2020, "Narh":40000}

  • Ushbu JSON matnni ko'chirib oling, va talabaning ismi va familiyasini konsolga chiqaring: talaba_json = """{"ism":"Hasan","familiya":"Husanov","tyil":2000}"""

  • Yuqoridagi ikki o'zgaruvchini alohida JSON fayllarga saqlang.

  • Ushbu JSON faylni yuklab oling. Faylda 3 ta talabaning ism va familiyasi saqlangan. Ularning har birini alohida qatordan "Ism Familiya, n-kurs, Fakultet talabasi" ko'rinishida konsolga chiqaring.

  • Quyidagi bog'lamaga kirsangiz, Wikipediadagi Python dasturlash tili haqidagi maqolani JSON ko'rinishida ko'rishingiz mumkin. Brauzerda chiqqan ma'lumotni JSON ko'rinishida saqlang (brauzerda Ctrl+S tugmasini bosib). Faylni Pythonda oching va konsolga maqolaning sarlavhasi (title) va qisqa matnini (extract) chiqaring: https://uz.wikipedia.org/w/api.php?format=json&action=query&prop=extracts&exintro&explaintext&redirects=1&titles=Python

JAVOBLAR


Javoblar uchun GirHub sahifamizga tashrif buyuring: https://github.com/anvarnarz/python-darslar





35-DARS. XATOLAR BILAN ISHLASH


Xatolarni jilovlashni o'rganamiz.

EXCEPTIONS


Avvalgi darslarimizning birida biz "Run time error" xatoliklari bilan tanishgan edik. Bunday xatolar dastur bajarish jarayonida kelib chiqadi va dasturning ishlashini to'xtatadi. Sintaks xatolikdan farqli ravishda Python bunday xatolarni dasturni bajarishdan avval aniqlay olmaydi.
Ushbu darsimizda qanday qilib mana shunday xatoliklarni jilovlashni o'rganamiz. Maqsadimiz xatolik yuz berganda dastur to'xtab qolishining oldini olish. Gap shundaki, dastur davomida xato yuz berganda Python maxsus exception (istisno) obyektini yaratadi. Agar bu obyekt "tutib" olinmasa, dastur bajarilishdan to'xtaydi.

try-except


Istisno obyektlarni tutib olish uchun Pythonda maxsus try-except operatorlari bor. Bu operatorlar quyidagicha ishlaydi, try operatori badanida bajarish kerak bo'lgan kod yoziladi, except operatori badanida esa xatolik yuz berganda bajarilishi kerak bo'lgan kod yoziladi. Ya'ni dasturimiz to'xtab qolmasdan bajarilaveradi.
Tushunarli bo'lishi uchun quyidagi misolni ko'ramiz.
In [4]:
yosh = input("Yoshingizni kiriting: ")
yosh = int(yosh)
print(f"Siz {2021-yosh} yilda tug'ilgansiz")
Yoshingizni kiriting: 36.5
--------------------------------------------------------------------------- ValueError Traceback (most recent call last) in 1 yosh = input("Yoshingizni kiriting: ") ----> 2 yosh = int(yosh) 3 print(f"Siz {2021-yosh} yilda tug'ilgansiz") ValueError: invalid literal for int() with base 10: '36.5'
Keling, yuqoridagi kodni try-except yordamida yozamiz:
In [5]:
yosh = input("Yoshingizni kiriting: ")
try:
yosh = int(yosh)
print(f"Siz {2021-yosh} yilda tug'ilgansiz")
except:
print("Butun son kiritmadingiz")


print("Dastur Tugadi!")
Yoshingizni kiriting: 36.5 Butun son kiritmadingiz Dastur Tugadi!
try-except operatorining afzalliklaridan biri, foydalanuvchiga tushunarsiz xatolar o'rniga, o'zimiz istagan, tushunarliroq matnni ko'rsatishimiz mumkin. Shuningdek, kompleks tizimlarda arzimagan xatoni deb dasturimiz to'xtab qolmaydi.

try-except-else


Yuqoridagi kodimizda biz try moduli ichida xato qaytarishi mumkin bo'lgan ifodani ham (tyil = int(tyil)), xato qaytmaganda bajarilishi kerak bo'lgan ifodani ham (print(f"Siz {2021-tyil} yoshdasiz") ) birdan yozib ketayapmiz. Aslida, bunday qilishimiz to'g'ri emas.
To'g'ri usuli, bu avval xatoga tekshirish va xato yuz bermaganda bajariladigan ifodani alohida, else blokida yozish:
In [7]:
yosh = input("Yoshingizni kiriting: ")
try:
yosh = int(yosh)
except:
print("Butun son kiritmadingiz")
else:
print(f"Siz {2021-yosh} yilda tug'ilgansiz")
Yoshingizni kiriting: 36.5 Butun son kiritmadingiz
Albatta, yuqoridagi usul har doim ham qo'l kelavermaydi.

Download 10,21 Mb.

Do'stlaringiz bilan baham:
1   ...   45   46   47   48   49   50   51   52   ...   58




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish