⊗pyPmExcCt 75 of 129 menu

Истисноҳи истисноҳо дар Python

Дар Python нисбат ба дигар забонҳои барномасозӣ ҳолатҳои бисёре ҳастанд, ки истисноҳо ба вуҷуд меоваранд.

Биёед ба тафсил онҳоро дида бароем. Фарз мекунем, ки мо рӯйхате дорем:

lst = [1, 2, 3]

Ба элементи мавҷуднабудаи рӯйхат муроҷиат мекунем:

print(lts[4])

Пас аз иҷрои код, хатогӣ (истисно) чоп карда мешавад:

IndexError: list index out of range

Агар ба мо лозим бошад, ки кори худро бе чопи истисно идома диҳем, бояд онро бо истифода аз сохтори try-except гирем. Он синтаксиси зеринро дорад:

try: # коде, ки истисно мебарорад except: # коркарди хатогӣ

Дар блоки try бояд кодиро ҷойгир кард, ки метавонад истисно дошта бошад. Агар ҳангоми иҷрои ин код ҳолати истисное ба вуҷуд ояд, пас иҷрои код боз намеистад, балки ба коди блоки except гузарида, дар он ҷо бояд паёме чоп кард, ки мӯҳтавиёти хатогии ба вуҷудомадаро ба таври дақиқ тавсиф мекунад.

Агар ҳангоми иҷрои блоки try ҳеҷ ҳолати истисное рӯй надиҳад, пас код танҳо иҷро мешавад ва коди блоки except иҷро намешавад.

Биёед истиснои моро дар муроҷиат ба элементи мавҷуднабудаи рӯйхат гирем. Барои ин, дар блоки try коди бо хатари эҳтимолиро ҷойгир мекунем. Ва дар блоки except чопи паёми 'error: elem is not exist'-ро дар консол муайян мекунем:

lst = [1, 2, 3] try: print(lst[4]) except: print('error: elem is not exist')

Пас аз иҷрои код, чоп карда мешавад:

'error: elem is not exist'

Пас аз омӯхтани сохтори try-except, услуби коди навиштаи шумо бояд тағйир ёбад. Акнун ҳама ҷойҳое, ки метавонад ҳолати истисно ба вуҷуд ояд, бояд дар try печида шавад ва дар блоки except паёми реаксия ба ин истисно навишта шавад.

Аз корбар ду рақам пурсед. Якеро бар дигаре тақсим кунед. Ҳолати истиснои тақсим бар сифрро гиред.

Аз корбар рақам пурсед. Решаи квадратии ин рақамро ёбед. Ҳолати истиснои гирифтани реша аз рақами манфиро гиред.

Рӯйхате дода шудааст. Аз корбар адади бутун пурсед. Элементи рӯйхатеро гиред, ки шумораи онро корбар ворид кардааст. Ҳолати истисноеро, ки рӯй медиҳад, агар корбар рақамеро берун аз диапазони рӯйхат ворид карда бошад, гиред.

Коди зерин дода шудааст:

num = '5' res = num + 2 print(res)

Ин код чӣ гап дорад? Нокомиҳои онро ислоҳ кунед.

Коди зерин дода шудааст:

lst = [1, 2, 3, 4] def getElem(iter): print(iter[4]) getElem(lst)

Ин код чӣ гап дорад? Нокомиҳои онро ислоҳ кунед.

Тоҷикӣ
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Мо барои коркарди сомона, таҳлил ва шахсӣ кардан аз cookie истифода мебарем. Коркарди маълумот мувофиқи Сиёсати махфият сурат мегирад.
ҳамаро қабул кардан танзим кардан рад кардан