目次
1. Pangunahing Kondisyon sa Python
Python ay malawakang ginagamit bilang isang simple ngunit makapangyarihang wika ng programming, at ang mga kondisyonal na sangay ay napakahalaga para kontrolin ang pag-andar ng programa. Sa artikulong ito, tatalakayin namin ang mga pangunahing kaalaman ng mga kondisyon sa Python pati na rin ang mga alternatibo saswitch
na pahayag.Ano ang mga kondisyonal na sangay sa Python?
Ang mga kondisyonal na sangay sa Python ay tumutukoy sa pagkontrol ng daloy ng programa batay sa tiyak na kondisyon. Halimbawa, kapag nais mong magsagawa ng iba’t ibang proseso depende sa halaga ng isang variable, ginagamit ang kondisyonal na sangay. Sa Python, ginagawa ito gamit angif
na pahayag.Pangunahing Estruktura ng if-elif-else na Pahayag
Isusulat ang mga kondisyonal na sangay sa Python gamit angif
na pahayag tulad ng sumusunod.x = 10
if x > 5:
print("x ay mas malaki sa 5")
elif x == 5:
print("x ay katumbas ng 5")
else:
print("x ay mas mababa sa 5")
Sa code na ito, kapag ang x
ay mas malaki sa 5, ipapakita ang “mas malaki sa 5”; kung hindi, susuriin ang susunod na kondisyon. Sa ganitong paraan, sinusuri ang maraming kondisyon nang sunud-sunod at isinasagawa ang angkop na proseso. Habang dumarami ang mga kondisyon, nagdadagdag ng elif
.Bakit Walang switch na Pahayag sa Python
Maraming wika ng programming ang mayswitch
na pahayag. Ginagamit ito upang mabilis na matukoy kung ang isang variable ay tumutugma sa isa sa ilang posibleng halaga. Subalit, wala ang switch
na pahayag sa Python. Ang dahilan ay dahil hinihikayat ng Python ang pagsulat ng “simple at malinaw” na code. Sa pamamagitan lamang ng if-elif-else
na pahayag, sapat na ang pagganap ng parehong functionality, kaya hindi na kailangan pang idagdag ang switch
na pahayag.2. Ang dahilan kung bakit walang switch statement sa Python
Ang mga taga-disenyo ng Python ay naghangad na gawing mas simple at madaling maintindihan ang programming sa pamamagitan ng pag-iwas sa kumplikadong syntax. Angswitch
statement ay kapaki-pakinabang kapag kailangang mag-branch base sa halaga ng variable, ngunit iniisip ng mga developer ng Python na maaaring palitan ito ng if-elif-else
statement.Pilosopiya ng Python na Nagpapahalaga sa Simpleng Code
Mayroong ideya sa pilosopiya ng Python na “binibigyang-diin ang pagiging simple”. Upang gawing maikli at madaling basahin ang code, pinili ng mga taga-disenyo ng Python na iwasan ang labis na syntax. Ito ay nag-aalis ng mga redundant na konstruksyon na makikita sa ibang programming languages, at sa pamamagitan ng malawak na paggamit ngif-elif-else
, nagiging flexible ang paghawak ng mga conditional branches.Pag-branch ng Kondisyon gamit ang if-elif-else
Sa Python, maaaring makamit ang parehong functionality ngswitch
gamit ang if-elif-else
. Halimbawa, kung nais mag-iba ng gawain batay sa araw ng linggo, maaaring isulat ito tulad ng sumusunod.day = "Martes"
if day == "Lunes":
print("Ngayon ay Lunes")
elif day == "Martes":
print("Ngayon ay Martes")
else:
print("Hindi wastong araw")
Sa ganitong paraan, madaling ma-branch ang maraming kondisyon, ngunit kapag dumarami ang mga ito, nagiging redundant ang code. Sa ganitong sitwasyon, kailangan maghanap ng mas epektibong paraan.3. Pamamaraan ng Kapalit ng switch statement sa Python
Dahil walangswitch
statement sa Python, kailangan mong gumamit ng ibang mga pamamaraang kapalit upang ipatupad ang conditional branching. Sa artikulong ito, ilalahad namin ang ilang karaniwang kapalit na ginagamit sa Python.Pamamaraan ng Kapalit gamit ang Dictionary
Bilang kapalit ngswitch
statement, may paraan na gumagamit ng dictionary (dict)
sa Python. Ang dictionary
ay binubuo ng mga pares ng susi at halaga, at napaka-kapaki-pakinabang kapag kailangang magsagawa ng iba’t ibang proseso batay sa kondisyon.def case_one():
return "Ito ay kaso 1"
def case_two():
return "Ito ay kaso 2"
switch_dict = {
1: case_one,
2: case_two
}
x = 1
print(switch_dict.get(x, lambda: "Hindi wastong kaso")())
Sa ganitong paraan, maaari mong patakbuhin ang mga function batay sa susi gamit ang dictionary. Dahil dito, posible nang magsulat ng mas malinis na code kumpara sa if-elif-else
statement.Mga Bentahe at Paalala sa Paggamit ng Dictionary
Sa paggamit ng dictionary, tumataas ang nababasa ng code at maaaring pamahalaan nang epektibo ang maraming kondisyon. Gayunpaman, dahil ang pamamaraang ito ay limitado lamang sa simpleng pagtugma ng susi at halaga, mas angkop angif-elif-else
statement kapag mas kumplikado ang mga kondisyon.
4. Kapalit gamit ang match statement mula Python 3.10 pataas
Sa Python 3.10 pataas, ipinakilala angmatch
statement, na nagbibigay ng katangiang halos katulad ng tradisyonal na switch
statement. Sa pamamagitan ng tampok na ito, maaaring gumamit ng pattern matching para sa pag-branch ng kondisyon.Pangunahing gamit ng match statement
match
statement ay isang syntax na nagkokompara ng maraming kaso batay sa tinukoy na halaga, at isinasagawa ang unang tumugmang kaso. Katulad ito ng switch
statement sa ibang wika.def get_grade(score):
match score:
case 90 <= score <= 100:
return "A"
case 80 <= score < 90:
return "B"
case _:
return "F"
grade = get_grade(85)
print(grade)
Sa code na ito, nagbabalik ng angkop na grado batay sa halaga ng score
. Ang match
statement ay napakalakas na tool dahil maaari nitong isulat nang maikli ang maraming kondisyon.5. Gabay sa Pagpili ng Tamang Paraan
Angif-elif-else
, dictionary type, at match
na pahayag na ipinakilala hanggang dito ay may kani-kanilang mga kalamangan. Ipinaliwanag dito kung paano dapat piliin ang mga pamamaraang ito batay sa mga totoong senaryo.Kapag Kaunting Kondisyon
Kapag kaunti ang mga kondisyon, ang paggamit ng pahayag naif-elif-else
ay ang pinakamadali at pinakaepektibo. Lalo na sa maliliit na script o simpleng pag-branch ng kondisyon, ang pamamaraang ito ang pinakamainam.Kapag Maraming Kondisyon
Kapag maraming kondisyon o nais mong magpatakbo ng function, epektibo ang paggamit ng dictionary. Sa pamamagitan ng dictionary, mas madaling pamahalaan ang mga kondisyon at napapabuti ang nababasa ng code.Kapag Kailangan ng Kumplikadong Kondisyon o Pattern Matching
Kung gumagamit ka ng Python 3.10 o mas bago, ang paggamit ng pahayag namatch
ay nagpapadali sa paghawak ng kumplikadong pag-branch ng kondisyon. Lalo na kapag kailangan ng pattern matching, ito ang pinakaangkop na paraan.