目次  
- 1 1. Introduksyon: Ang kahalagahan ng exception handling sa Python
- 2 2. Paghawak ng Exception sa Python: Pangunahing Sintaks at Daloy
- 3 3. Mga Karaniwang Exception at ang Kanilang Pamamaraan ng Paghawak
- 4 4. Paraan ng paghawak ng maramihang mga exception
- 5 5. Mga user-defined na exception at paggamit ng raise na pahayag
- 6 6. Buod at Mga Pinakamahusay na Kasanayan
1. Introduksyon: Ang kahalagahan ng exception handling sa Python
Sa programming, hindi maiiwasan ang mga exception at error. Gayunpaman, sa pamamagitan ng tamang paghawak ng mga exception, maaaring maiwasan ang hindi inaasahang pag-hinto ng programa at makapagbigay ng angkop na mensahe ng error sa mga gumagamit. Sa Python, mayroong malakas na mekanismo para sa paghawak ng mga ganitong exception. Sa paggamit ng exception handling, tataas ang pagiging maaasahan ng programa at magiging mas maayos ang pag-andar nito. Halimbawa, kung ang isang gumagamit ay magsasagawa ng paghahati sa zero o susubukang magbukas ng file na hindi umiiral, kung walang exception handling, agad na titigil ang programa. Ngunit sa pamamagitan ng tamang paghawak ng mga exception, maaaring ipagpatuloy ang programa o magpakita ng malinaw na mensahe ng error sa gumagamit.2. Paghawak ng Exception sa Python: Pangunahing Sintaks at Daloy
Sa Python, pangunahing tatlong keyword ang ginagamit para sa paghawak ng exception:try, except, at finally.2.1 try para sa pagtuklas ng error
 try statement ay ginagamit upang balutin ang mga prosesong maaaring magdulot ng error. Halimbawa, mga operasyon sa network, pagproseso ng file, input ng user, at iba pang mga bahagi na maaaring mag‑error sa runtime ay nilalagay sa loob ng try block.try:
    result = 10 / 0
except:
    print("Naganap ang error")10 / 0 ay nagdudulot ng exception, at ang except block ay isinasagawa.2.2 except para sa pagproseso ng error
 except statement ay nagha‑catch ng nangyaring exception at nagpoproseso nito. Kapag nag‑error, tinitiyak nito na hindi mag‑behave ang programa nang hindi inaasahan, sa pamamagitan ng tamang pag‑handle gamit ang except. Maaari ring mag‑define ng iba’t ibang pag‑proseso depende sa uri ng exception.try:
    print(a)
except NameError:
    print("Hindi pa naideklara ang variable")
except ZeroDivisionError:
    print("Hindi maaaring hatiin ng 0")2.3 finally para sa tiyak na pag‑release ng resources
 finally statement ay isang block na palaging isinasagawa, kahit na may exception. Kapag gumagamit ng file operations o network resources, ginagamit ito upang siguraduhing laging nare‑release ang resources kahit na may exception.try:
    file = open("test.txt", "r")
finally:
    file.close()finally para matiyak ang maayos na pamamahala ng resources.
3. Mga Karaniwang Exception at ang Kanilang Pamamaraan ng Paghawak
Sa Python, maraming uri ng mga exception ang inihanda. Narito ang ilang pangunahing exception at ang kanilang mga paraan ng paghawak.3.1 NameError: Kapag gumamit ng hindi pa natukoy na variable
 NameError ay nangyayari kapag tinukoy ang isang variable na hindi pa nadefine. Halimbawa, kapag ang variable ay hindi pa na-initialize.try:
    print(a)
except NameError:
    print("Hindi naka-define ang variable")3.2 TypeError: Kapag sinubukang mag-operate ng magkaibang uri
 TypeError ay nangyayari kapag ang operasyon sa magkaibang data type ay hindi wasto. Halimbawa, kapag sinusubukang i-add ang isang numeric at string.try:
    result = '10' + 5
except TypeError:
    print("Sinubukang mag-operate ng magkaibang uri")3.3 ValueError: Kapag may maling halaga na ipinasa
 ValueError ay nangyayari kapag may invalid na halaga na ipinasa. Halimbawa, kapag sinusubukang i-convert ang string sa integer.try:
    number = int("abc")
except ValueError:
    print("May maling halaga na ipinasa")4. Paraan ng paghawak ng maramihang mga exception
Sa Python, posible na mahuli ang maramihang mga exception sa loob ng isangtry block. Maaari ring maproseso ang maramihang mga exception nang sabay sa isang except na pahayag.4.1 Pagproseso ng maramihang mga exception nang hiwalay
Kung nais mong iproseso ang bawat exception nang hiwalay, gagamit ka ng maramihangexcept na mga block.try:
    result = 10 / 0
except ZeroDivisionError:
    print("Hindi maaaring hatiin sa 0")
except NameError:
    print("Hindi pa naideklara ang variable")4.2 Pagproseso ng maramihang mga exception nang sabay
Kung nais mong gawin ang parehong pagproseso para sa maramihang mga exception, maaari mong sabay-sabay na hulihin ang mga ito gamit ang isangexcept na pahayag.try:
    result = 10 / '10'
except (ZeroDivisionError, TypeError):
    print("Nagkaroon ng hindi wastong operasyon")
5. Mga user-defined na exception at paggamit ng raise na pahayag
 Sa Python, maaari kang mag-define ng sarili mong mga exception para sa mga espesyal na sitwasyon na hindi nasasaklaw ng mga standard na exception. Ang ganitong mga custom na exception ay maaaring sadyang ipagana gamit ang raise na pahayag.5.1 Pagpapagana ng custom na exception gamit ang raise na pahayag
 Halimbawa, maaari mong i-define ang isang custom na exception na magtataas ng error kapag isang negatibong halaga ang naipasa, tulad ng sumusunod.def check_value(value):
    if value < 0:
        raise ValueError("Hindi pinapayagan ang negatibong halaga")
    return value
try:
    check_value(-10)
except ValueError as e:
    print(e)raise na pahayag, maaari mong kontrolin ang paglabas ng error at magpakita ng angkop na mensahe ng error.6. Buod at Mga Pinakamahusay na Kasanayan
Ang paghawak ng mga exception ay isang mahalagang tampok upang gawing mas matibay at ligtas ang mga programang Python. Narito ang mga pinakamahusay na kasanayan sa paghawak ng mga exception.- Mahuli ang partikular na mga exception: Kapag humuhuli ng mga exception, dapat mong tukuyin hangga’t maaari ang tiyak na uri ng error at iwasan ang labis na paggamit ng pangkalahatang Exception. Sa ganitong paraan, mas epektibong mapoproseso ang mga hindi inaasahang exception.
- Maging masinsinan sa pamamahala ng mga mapagkukunan: Inirerekomenda na ang mga mapagkukunan tulad ng mga file at koneksyon sa network ay laging linisin gamit ang finallyblock.
- Gawing malinaw ang mga mensahe ng error: Kapag nagpapakita ng mensahe ng error sa mga gumagamit, siguraduhing malinaw ang sanhi ng problema at magbigay ng gabay kung paano ito aayusin.

 
 


