पायथन में फ्रैक्शन मॉड्यूल परिमेय संख्या अंकगणित का समर्थन करता है। इस मॉड्यूल का उपयोग करके, हम पूर्णांकों, फ़्लोट्स, दशमलव और कुछ अन्य संख्यात्मक मानों और स्ट्रिंग्स से भिन्न बना सकते हैं।
अंश उदाहरण की एक अवधारणा है। यह अंश और हर के रूप में पूर्णांकों के एक युग्म से बनता है।
वर्ग अंश। भिन्न फ्रैक्शन ऑब्जेक्ट बनाने के लिए उपयोग किया जाता है। यह अंश और भाजक लेता है। अंश का डिफ़ॉल्ट मान 0 है और हर 1 है। जब हर 0 होता है तो यह ZeroDivisionError उठाता है।
सबसे पहले हम देखेंगे कि कैसे वर्ग अंश और हर का उपयोग करके भिन्न बना सकता है।
उदाहरण कोड
from fractions import Fraction as frac print(frac(45, 54)) print(frac(12, 47)) print(frac(0, 15))
आउटपुट
5/6 12/47 0
हम भिन्न वस्तु के तर्क के रूप में कुछ फ्लोटिंग पॉइंट नंबर प्रदान कर सकते हैं। यदि हम सटीक फ़्लोटिंग पॉइंट मान प्रदान करते हैं, तो यह इसे पूर्णांक प्रकार के अंश और हर मान में बदलने का प्रयास करेगा। इस मामले में, यह अनुमानित मूल्य तक पहुंचने की कोशिश करता है। यदि फ़्लोटिंग पॉइंट नंबर एक स्ट्रिंग के रूप में प्रदान किया जाता है, तो यह सटीक मान को भिन्न के रूप में खोजने का प्रयास करेगा। निम्नलिखित उदाहरणों से, आप अंतर देख सकते हैं।
उदाहरण कोड
from fractions import Fraction as frac print(frac(33.33)) print(frac('33.33'))
आउटपुट
2345390243441541/70368744177664 3333/100
आइए देखते हैं, फ्रैक्शन ऑब्जेक्ट के स्ट्रिंग प्रकार के तर्कों पर कुछ अन्य उदाहरण। यह संख्याओं के संकेत का भी समर्थन करता है। यह + या - चिह्न का समर्थन करता है।
उदाहरण कोड
from fractions import Fraction as frac print(frac('5/6')) print(frac('-25.12')) print(frac('96.251 \t\n')) print(frac('3.14159265359'))
आउटपुट
5/6 -628/25 96251/1000 314159265359/100000000000
जैसा कि हमने देखा है, कभी-कभी भिन्न वस्तु में हर बहुत बड़े होते हैं। तो हम हर की लंबाई को सीमित कर सकते हैं। डिफ़ॉल्ट लंबाई 1000000 है। यह फ्लोटिंग पॉइंट डेटा के लिए तर्कसंगत सन्निकटन करने में मदद करता है। हर को सीमित करने के लिए, limit_denominator() . नामक एक फ़ंक्शन है ।
कभी-कभी हम पूर्ण भिन्न वस्तु के बिना केवल अंश या हर चाहते हैं। तो इस विधि में उन्हें प्राप्त करने के लिए अंश और हर कीवर्ड हैं।
उदाहरण कोड
from fractions import Fraction as frac print(frac('3.14159265359')) print(frac('3.14159265359').limit_denominator(1000)) print(frac('3.14159265359').limit_denominator(100)) print(frac('3.14159265359').limit_denominator(10)) print(frac('36.25')) print(frac('36.25').numerator) print(frac('36.25').denominator)
आउटपुट
314159265359/100000000000 355/113 311/99 22/7 145/4 145 4
भिन्न गणितीय कार्यों का भी समर्थन कर सकते हैं, जैसे जोड़, घटाव, गुणा, भाग, शक्ति आदि।
उदाहरण कोड
from fractions import Fraction as frac print('Add: ' + str(frac('5/4') + frac('9/8'))) print('Subtract: ' + str(frac('15/20') - frac('2/8'))) print('Multiply: ' + str(frac('2/3') * frac('5/7'))) print('Divide: ' + str(frac('80/125') / frac('12/45'))) print('Power: ' + str(frac('5/6') ** 3))
आउटपुट
Add: 19/8 Subtract: 1/2 Multiply: 10/21 Divide: 12/5 Power: 125/216
वर्गमूल, फर्श, छत और कुछ अन्य संचालन भी इस वस्तु द्वारा समर्थित हैं।
उदाहरण कोड
from fractions import Fraction as frac import math print('Square Root: ' + str(math.sqrt(frac(36, 64)))) print('Square Root: ' + str(frac(math.sqrt(frac(36, 64))))) print('Floor Value: ' + str(math.floor(frac('22/7')))) print('Ceiling Value: ' + str(math.ceil(frac('22/7'))))
आउटपुट
Square Root: 0.75 Square Root: 3/4 Floor Value: 3 Ceiling Value: 4