ازگر تھرو استثناء۔

Python Throw Exception



پروگرام پر عملدرآمد کے دوران ایک استثنا ظاہر ہوتا ہے اور غلطی کی وجہ سے اس کا معمول کا بہاؤ تبدیل ہوجاتا ہے۔ ایک غلطی کی وجہ سے ایک استثناء پیدا ہوتا ہے۔ استثنا کی بنیادی وجہ ایک منطقی غلطی ہے۔ بہت سی دیگر پروگرامنگ زبانوں کی طرح ، ازگر کئی بلٹ ان استثناء فراہم کرتا ہے ، یعنی زیرو ڈیویژن ایرر ، امپورٹ ایرر ، ای او ایف ایرر ، وغیرہ۔ مثال کے طور پر ، ZeroDivisionError استثنا اس وقت اٹھایا جاتا ہے جب کسی نمبر کو صفر سے تقسیم کیا جائے۔ ازگر استثناء کو کوشش کے بیان سے سنبھالا جاتا ہے۔ ہم ٹرائی بلاک کی وضاحت کرتے ہیں اور کوڈ کو کمزور کوڈ اس بلاک کے اندر ڈال دیتے ہیں ، جو ایک استثناء پیدا کر سکتا ہے۔ اگلا ، ٹرائی بلاک کے بعد ، ہم استثناء سے نمٹنے کے لیے سوائے بلاک کی وضاحت کرتے ہیں۔ ان تمام بلٹ ان مستثنیات کے علاوہ ، بعض اوقات جب ہمیں کسی مخصوص صورتحال کا سامنا کرنا پڑتا ہے تو ہمیں استثناء بڑھانا یا پھینکنا پڑتا ہے۔ ازگر کا ڈویلپر صارف کی وضاحت شدہ رعایت آسانی سے پھینک سکتا ہے۔ ہم استعمال کرتے ہیں۔ بلند کرنا استثناء بڑھانے یا پھینکنے کے لیے مطلوبہ الفاظ یہ مضمون مثالوں کے ساتھ استثناء کو پھینکنے کے لیے ازگر کے مطلوبہ الفاظ کے استعمال کی وضاحت کرتا ہے۔







نحو۔

ایک استثناء پھینکنے کے لئے نحو بہت سیدھا ہے ، اور اس طرح:



بلند کرنا۔رعایت(کوئیپیغام)

رائز کی ورڈ لکھنے کے بعد ، اپنے استثناء کی وضاحت کریں۔



استثناء سے نمٹنے کی مثال۔

سب سے پہلے ، آئیے ایک آزمائشی بلاک کی ایک مثال دیکھتے ہیں کہ ہم ازگر کے اندرونی استثنا سے کیسے نمٹ سکتے ہیں ، اور اس کے بعد ، ہم ازگر کے استثناء کو پھینکنے یا بڑھانے کی کچھ مثالیں دیکھیں گے۔ ذیل میں دی گئی مثال میں ، ہم نے دو متغیرات بنائے ہیں۔ دوسرے متغیر کی قیمت صفر کے برابر ہے۔ جب ہم num1 کو num2 کے ساتھ تقسیم کرتے ہیں ، تو یہ ZeroDivisionError بڑھا دے گا۔ ڈویژن کوڈ ایک استثناء دے گا لہذا ، اسے ٹرائی بلاک کے اندر رکھا گیا ہے۔ سوائے بلاک کے استثناء پکڑتا ہے اور پیغام کو پرنٹ کرتا ہے ایک غیر متوقع خرابی پیش آئی۔





#ایک نمبر متغیر کا اعلان
نمبر 1=بیس
#دوسرا نمبر متغیر کا اعلان
نمبر 2=
#کوشش بلاک کو پورا کرنا۔
کوشش کریں:
نتیجہ=num1/num2
سوائے:
پرنٹ کریں('ایک غیر متوقع خرابی پیش آگئی')

آؤٹ پٹ۔



ایک استثناء کی مثال پیش کریں۔

اب آئیے مثالوں کے ذریعے سمجھتے ہیں کہ ہم کس طرح بڑھاوا دینے والے مطلوبہ الفاظ کا استعمال کرکے استثناء کو پھینک سکتے ہیں یا بڑھا سکتے ہیں۔ دی گئی مثال میں ، ہم ایک استثناء کو بڑھا رہے ہیں جب کسی نمبر کو کسی منفی نمبر سے تقسیم کیا جائے۔

#ایک نمبر متغیر کا اعلان
نمبر 1=بیس
#دوسرا نمبر متغیر کا اعلان
نمبر 2=-10۔
اگر(نمبر 2<):
#استثناء بڑھانا
بلند کرنا رعایت(نمبر 2 منفی نمبر نہیں ہونا چاہیے)
اور:
نتیجہ=num1/num2
پرنٹ کریں(نتیجہ)

آؤٹ پٹ۔

آؤٹ پٹ ظاہر کرتا ہے کہ استثنا نمبر 2 کو منفی نمبر نہیں ہونا چاہیے۔

ہم غلطی کی قسم کی بھی وضاحت کر سکتے ہیں۔ آئیے اس پر ایک نظر ڈالتے ہیں۔

#ایک نمبر متغیر کا اعلان
نمبر 1=بیس
#دوسرا نمبر متغیر کا اعلان
نمبر 2=-10۔
اگر(نمبر 2<):
#استثناء بڑھانا
بلند کرنا ٹائپ ایرر۔('منفی نمبر کی خرابی')
اور:
نتیجہ=num1/num2
پرنٹ کریں(نتیجہ)

آؤٹ پٹ۔

دی گئی مثال میں ، قسم کی غلطی کی وضاحت کی گئی ہے ، اور یہ پیغام کو کنسول پر پرنٹ کرتا ہے کہ یہ منفی نمبر کی خرابی ہے۔

آئیے ایک ازگر استثنا پھینکنے کی ایک اور مثال دیکھیں۔ دی گئی مثال میں ، اگر فہرست میں کوئی غیر عددی قیمت ہے ، تو پروگرام ایک استثناء پیش کرتا ہے۔

#ایک فہرست کا اعلان
my_list=[،،،7.7۔،'xyz']
#ایک لوپ کے لیے عمل کرنا۔
کے لیےمیںمیںmy_list:
#ہر فہرست آئٹم کی قسم چیک کر رہا ہے۔
اگر نہیں قسم(میں) ہے int:
#ایک استثناء پھینکنا اگر عنصر کی قسم عدد نہیں ہے۔
بلند کرنا رعایت('فہرست غیر عددی قدر پر مشتمل ہے')
اور:
پرنٹ کریں(میں)

آؤٹ پٹ۔

نتیجہ

ایک استثنا غلطی کے حوالے سے پروگرام کے عام بہاؤ کو تبدیل کرتا ہے۔ ازگر میں ، ہم ایک استثنا پھینک سکتے ہیں جس کی وضاحت صارفین کرتے ہیں۔ استثنا کو پھینکنے کے لیے ، ہم ازگر کا بلٹ ان رائز کی ورڈ استعمال کرتے ہیں۔ یہ مضمون مثالوں کے ساتھ مستثنیات پھینکنے کے تصور کی وضاحت کرتا ہے۔