कोई भी संख्या जिसे भागफल या भिन्न के रूप में p/q के रूप में व्यक्त किया जा सकता है, परिमेय संख्या कहलाती है। पायथन लाइब्रेरी का फ्रैक्शंस मॉड्यूल परिमेय संख्या अंकगणित के लिए कार्यक्षमता प्रदान करता है।
यह मॉड्यूल एक भिन्न वर्ग को परिभाषित करता है। इसका उद्देश्य विभिन्न तरीकों से निम्न प्रकार से गठित किया जा सकता है -
Fraction(num, denom)
फ्रैक्शन कंस्ट्रक्टर का पहला संस्करण अंश और हर के लिए दो पैरामीटर प्राप्त करता है। डिफ़ॉल्ट अंश 0 है और डिफ़ॉल्ट भाजक 1 है। हर का मान =0 ज़ीरोडिविजन एरर फेंकता है।
भिन्नों से>>> from fractions import Fraction >>> n1 = Fraction(2,5) >>> n1 Fraction(2, 5) >>> n2 = Fraction(6,15) >>> n2 Fraction(2, 5) >>> n3 = Fraction(10,1) >>> n3 Fraction(10, 1) >>> n3 = Fraction(10) >>> n3 Fraction(10, 1)
ध्यान दें कि अंश और हर के मापदंडों को सामान्य कारकों से विभाजित करने के बाद न्यूनतम मानों में घटा दिया जाता है।
फ्रैक्शन कंस्ट्रक्टर स्ट्रिंग पैरामीटर भी प्राप्त कर सकता है बशर्ते इसमें वैध संख्यात्मक प्रतिनिधित्व हो।
>>> n1 = Fraction('5') >>> n1 Fraction(5, 1) >>> n2 = Fraction('4/7') >>> n2 Fraction(4, 7) >>> n3 = Fraction('0.25') >>> n3 Fraction(1, 4) >>> n4 = Fraction('1.23E4') >>> n4 Fraction(12300, 1)
एक फ्लोटिंग पॉइंट नंबर कंस्ट्रक्टर के लिए एक पैरामीटर भी हो सकता है। हालांकि, फ्लोट को शुद्ध बाइनरी रूप में निरूपित करने के कारण, परिणामी भिन्न वस्तु के अंश और हर का भागफल सटीक नहीं हो सकता है। दूसरी ओर, एक पैरामीटर के रूप में दशमलव वर्ग की एक वस्तु भी एक भिन्न वस्तु उत्पन्न करती है।
>>> from fractions import Fraction >>> from decimal import Decimal >>> n1 = Fraction(2.1) >>> n1 Fraction(4728779608739021, 2251799813685248) >>> n2 = Fraction(Decimal('2.1')) >>> n2 Fraction(21, 10)
भिन्न वस्तुओं के साथ सभी अंकगणितीय संचालन की अनुमति है।
>>> n1 = Fraction(2,3) >>> n2 = Fraction(1,2) >>> n1+n2 Fraction(7, 6) >>> n1-n2 Fraction(1, 6) >>> n1*n2 Fraction(1, 3) >>> n1/n2 Fraction(4, 3)
बस याद करने के लिए कि कैसे यादृच्छिक संख्या अंकगणित को भागफल के रूप में किया जाता है -
भिन्न वस्तु में दो विशेषताएँ होती हैं, अंश और हर जिसे स्वतंत्र रूप से पहुँचा जा सकता है।
>>> n1 = Fraction(2,3) >>> n1.numerator 2 >>> n1.denominator 3
फ्रैक्शन क्लास में भागफल (फ्लोर वैल्यू) से छोटा सबसे बड़ा पूर्णांक और भागफल (सील वैल्यू) से बड़ा सबसे छोटा पूर्णांक खोजने के लिए उपयोगी तरीके हैं।
>>> n1 = Fraction(355,113) >>> n1.__floor__() 3 >>> n1.__ceil__() 4
एक अन्य वर्ग विधि लिमिट_डेनोमिनेटर () वह निकटतम अंश लौटाती है जिसमें हर निर्दिष्ट मान के बराबर सबसे अधिक होता है।
>>> Fraction('2.71828').limit_denominator(400) Fraction(1071, 394)
इस लेख में पायथन मानक पुस्तकालय के भिन्न मॉड्यूल में सुविधाओं और कार्यों पर चर्चा की गई है।