Python `decimal` Module sa Filipino
Ang artikulong ito ay nagpapaliwanag ng module na decimal
ng Python.
Maaari mong malaman ang mga pangunahing kaalaman sa pagkalkula gamit ang module na decimal
, pag-manage ng precision, pag-round, at marami pa, kasama ang mga halimbawa ng code.
YouTube Video
Python decimal
Module sa Filipino
Ang decimal
module ng Python ay nagbibigay ng fixed-precision decimal arithmetic upang maiwasan ang mga error na nangyayari sa floating-point operations. Sa paggamit ng module na ito, mas maaasahang resulta ang makakamtan sa mga kalkulasyon pang-pinansyal o mga kalkulasyon na nangangailangan ng mataas na katumpakan. Sa mga sitwasyon kung saan nagiging problema ang mga error mula sa float
type, epektibo ang decimal
module.
Pangunahing Paggamit ng decimal
Module
Kapag gumagamit ng decimal
module, i-import ang Decimal
class at i-handle ang mga halaga bilang mga instance ng class na ito. Susunod, ipapakita namin ang pangunahing paggamit.
1from decimal import Decimal
2
3# Basic usage example of Decimal
4a = Decimal('0.1')
5b = Decimal('0.2')
6result = a + b
7
8print(f"Result: {result}") # Result: 0.3
- Ang code na ito ay tumpak na nagdadagdag ng 0.1 at 0.2 gamit ang
Decimal
class. Ang parehong kalkulasyon gamit angfloat
type ay nagreresulta sa mga halagang may errors, habang angDecimal
ay iniiwasan ang mga error na ito.
Pagkontrol sa Precision
Ang decimal
module ay nagpapahintulot sa iyo na madaling kontrolin ang precision (bilang ng mga decimal places) sa mga kalkulasyon. Ang getcontext()
function ay maaaring gamitin upang kunin ang kasalukuyang context at baguhin ang mga setting nito.
1from decimal import Decimal, getcontext
2
3# Set the precision
4getcontext().prec = 4 # Set to 4 decimal places
5
6a = Decimal('1') / Decimal('3')
7print(f"Result with precision 4: {a}") # Result with precision 4: 0.3333
- Sa halimbawang ito, ang precision ay itinakda sa 4 na digits para sa kalkulasyon ng
1 ÷ 3
. Gamit angDecimal
, maaari mong itakda ang precision ng mga kalkulasyon ayon sa pangangailangan, pinapayagan kang ayusin ang mga resulta nang naaayon.
Pag-roundoff (Pagbibigay ng Bilog na Halaga)
Ang decimal
module ay may iba't ibang opsyon para tukuyin ang mga pamamaraan ng pag-round. Ang mga sumusunod ay mga halimbawa ng paggamit ng iba't ibang opsyon sa pag-round tulad ng ROUND_UP
at ROUND_DOWN
.
1from decimal import Decimal, ROUND_UP, ROUND_DOWN
2
3# Example of rounding a number
4a = Decimal('1.2345')
5
6# Rounding up
7rounded_up = a.quantize(Decimal('0.01'), rounding=ROUND_UP)
8print(f"Rounded Up: {rounded_up}") # Rounded Up: 1.24
9
10# Rounding down
11rounded_down = a.quantize(Decimal('0.01'), rounding=ROUND_DOWN)
12print(f"Rounded Down: {rounded_down}") # Rounded Down: 1.23
- Dito, ang
quantize()
ay ginamit upang mag-round up at mag-round down ng mga numero sa precision na 2 decimal places. Pinapayagan nito ang simpleng pag-round gayundin ang iba't ibang uri ng mga pamamaraan sa pag-round.
Konteksto ng Operasyon at Mga Exception
Ang decimal
module ay maaari ring mag-handle ng mga error at exception na nangyayari sa panahon ng operasyon. Maaaring magtakda ng sariling pamamahala para sa mga tiyak na error, tulad ng paghahati sa zero o overflow.
1from decimal import Decimal, getcontext, DivisionByZero
2
3# Exception handling
4getcontext().traps[DivisionByZero] = True
5
6try:
7 result = Decimal('1') / Decimal('0')
8except DivisionByZero:
9 print("Division by zero error caught!")
- Sa halimbawang ito, ang
DivisionByZero
na exception ay nasusubaybayan kapag nangyari ang paghahati sa zero. Sadecimal
na module, maaaring kontrolin at i-customize ang mga error sa ganitong paraan.
Buod
Ang decimal
na module ay lubhang kapaki-pakinabang sa mga financial na kalkulasyon o sa mga sitwasyon kung saan kinakailangan ang mataas na katumpakan upang maiwasan ang floating-point errors. Sinusuportahan nito ang malawak na hanay ng mga aplikasyon, mula sa mga pangunahing kalkulasyon, pamamahala ng katumpakan, pag-ikot, at paghawak ng mga exception. Suriin ang mga pinaikling punto sa ibaba at gamitin ang decimal
module batay sa iyong mga partikular na pangangailangan.
- Posibleng makamit ang tumpak na decimal arithmetic gamit ang
Decimal
na klase. - Maaari mong malayang isaayos ang precision at rounding na mga setting.
- Maaaring pamahalaan ang mga exception tulad ng paghahati sa zero.
Hinahayaan ka nitong gamitin ang decimal
na module upang mabawasan ang mga error sa mga sitwasyon kung saan kinakailangan ang tumpak na numerical na kalkulasyon.
Maaari mong sundan ang artikulo sa itaas gamit ang Visual Studio Code sa aming YouTube channel. Paki-check din ang aming YouTube channel.