Python abs() फ़ंक्शन: निरपेक्ष मान उदाहरण

⚡ स्मार्ट सारांश

Python abs() एक अंतर्निर्मित फ़ंक्शन है जो किसी संख्या का निरपेक्ष मान लौटाता है, यानी शून्य से उसकी दूरी (बिना चिह्न के)। यह पूर्णांक, फ़्लोटिंग-पॉइंट संख्याएँ और जटिल संख्याएँ स्वीकार करता है, और जटिल इनपुट के लिए परिमाण लौटाता है।

  • 🔢 निरपेक्ष मान: abs() फ़ंक्शन किसी संख्या से चिह्न हटा देता है और शून्य से उसकी दूरी लौटाता है, इसलिए abs(-25) और abs(25) दोनों 25 देते हैं।
  • 🧮 संख्या प्रकार: एकल आर्गुमेंट एक पूर्णांक, एक फ्लोटिंग-पॉइंट संख्या या एक जटिल संख्या हो सकता है, और रिटर्न प्रकार इनपुट से मेल खाता है।
  • 🔟 जटिल परिमाण: (3+10j) जैसी जटिल संख्या के लिए, abs() इसका परिमाण लौटाता है, जो वास्तविक और काल्पनिक भागों के वर्गों का वर्गमूल होता है।
  • ???? सूची: abs() एक समय में एक ही संख्या को संभालता है, इसलिए [abs(n) for n in nums] जैसा कॉम्प्रिहेंशन इसे प्रत्येक तत्व पर लागू करता है।
  • abs() बनाम math.fabs(): अंतर्निर्मित abs() इनपुट प्रकार को बरकरार रखता है और जटिल संख्याओं का समर्थन करता है, जबकि math.fabs() हमेशा एक फ्लोट लौटाता है और इसके लिए math मॉड्यूल की आवश्यकता होती है।
  • 🤖 एआई सहायता: GitHub Copilot जैसे AI उपकरण एक छोटे से प्रॉम्प्ट से माध्य निरपेक्ष त्रुटि जैसे कार्यों के लिए abs() और NumPy np.abs() कॉल उत्पन्न करते हैं।

Python abs() फ़ंक्शन

Python एब्स ()

Python एब्स () यह मानक लाइब्रेरी के साथ उपलब्ध एक अंतर्निर्मित फ़ंक्शन है। Pythonयह दी गई संख्या का निरपेक्ष मान लौटाता है। किसी संख्या का निरपेक्ष मान उसके चिह्न को ध्यान में रखे बिना निकाला जाता है। संख्या पूर्णांक, फ्लोटिंग-पॉइंट या जटिल संख्या हो सकती है। यदि दी गई संख्या जटिल है, तो यह उसका परिमाण लौटाएगा।

वाक्य - विन्यास

abs() फ़ंक्शन का सिंटैक्स नीचे दिखाया गया है:

abs(value)

पैरामीटर (मान)

निरपेक्ष मान प्राप्त करने के लिए abs() को दिया जाने वाला इनपुट मान। यह एक पूर्णांक, एक फ़्लोट या एक जटिल संख्या हो सकती है।

प्रतिलाभ की मात्रा:

abs() फ़ंक्शन दी गई संख्या का निरपेक्ष मान लौटाता है।

  • यदि इनपुट एक पूर्णांक है, तो रिटर्न वैल्यू भी एक पूर्णांक होगी।
  • यदि इनपुट एक फ्लोट मान है, तो रिटर्न मान भी एक फ्लोट मान होगा।
  • यदि इनपुट एक सम्मिश्र संख्या है, तो वापसी मान इनपुट का परिमाण होगा।

उदाहरण

निम्नलिखित उदाहरणों में पूर्णांक, फ्लोट और कॉम्प्लेक्स मानों पर abs() फ़ंक्शन का उपयोग दिखाया गया है।

Code उदाहरण 1: पूर्णांक और फ्लोट संख्या

किसी पूर्णांक और फ्लोट संख्या का निरपेक्ष मान प्राप्त करने के लिए, इस कोड को देखें:

# testing abs() for an integer and float
  int_num = -25
  float_num = -10.50
  print("The absolute value of an integer number is:", abs(int_num))
  print("The absolute value of a float number is:", abs(float_num))

आउटपुट:

The absolute value of an integer number is: 25
The absolute value of a float number is: 10.5

उदाहरण 2: सम्मिश्र संख्या

किसी जटिल संख्या का निरपेक्ष मान प्राप्त करने के लिए, इस कोड का उपयोग करें:

# testing abs() for a complex number
complex_num = (3+10j)
print("The magnitude of the complex number is:", abs(complex_num))

आउटपुट:

The magnitude of the complex number is: 10.44030650891055

किसी सूची का निरपेक्ष मान कैसे ज्ञात करें Python

abs() फ़ंक्शन केवल एक संख्या पर काम करता है, इसलिए पूरी सूची को इसमें पास करने पर TypeError उत्पन्न होता है। सूची के प्रत्येक आइटम पर इसे लागू करने के लिए, एक लिस्ट कॉम्प्रिहेंशन का उपयोग करें जो प्रत्येक तत्व पर abs() को कॉल करता है:

numbers = [12, 30, -33, -22, 77, -100]
abs_numbers = [abs(num) for num in numbers]
print(abs_numbers)

आउटपुट:

[12, 30, 33, 22, 77, 100]

यह कॉम्प्रिहेंशन मूल क्रम को बनाए रखता है और धनात्मक मानों की एक नई सूची लौटाता है। आप बिल्ट-इन map() फ़ंक्शन का उपयोग करके भी यही परिणाम प्राप्त कर सकते हैं, उदाहरण के लिए। list(map(abs, numbers))जो स्पष्ट लूप लिखे बिना प्रत्येक तत्व पर abs() लागू करता है।

  • जब आप मानों को फ़िल्टर या रूपांतरित भी करना चाहते हैं, तो लिस्ट कॉम्प्रिहेंशन का उपयोग करें।
  • abs() को सीधे लागू करने वाले संक्षिप्त और पठनीय कॉल के लिए map() का उपयोग करें।
  • बड़े संख्यात्मक डेटासेट के लिए, np.abs() के साथ NumPy ऐरे का उपयोग करना, किसी अन्य विधि की तुलना में तेज़ होता है। Python पाश।

Python abs() बनाम math.fabs()

Python यह मॉड्यूल निरपेक्ष मान प्राप्त करने के दो तरीके प्रदान करता है: अंतर्निहित abs() फ़ंक्शन और math मॉड्यूल का fabs() फ़ंक्शन। ये दिखने में समान हैं लेकिन इनका व्यवहार अलग-अलग है:

import math

print(abs(-7))          # 7 (int is unchanged)
print(math.fabs(-7))    # 7.0 (float result)

आउटपुट:

7
7.0

इन दोनों कार्यों के बीच मुख्य अंतर निम्नलिखित हैं:

  • वापसी प्रकार: abs() इनपुट प्रकार को संरक्षित करता है और पूर्णांक के लिए एक पूर्णांक लौटाता है, जबकि math.fabs() हमेशा एक फ्लोट लौटाता है।
  • आयात: abs() हमेशा उपलब्ध होता है, लेकिन math.fabs() के लिए आवश्यकता होती है import math.
  • जटिल संख्याएँ: abs() एक जटिल संख्या का परिमाण लौटाता है, जबकि math.fabs() जटिल इनपुट के लिए TypeError उत्पन्न करता है।

व्यावहारिक अनुप्रयोग Python abs() फ़ंक्शन

क्योंकि यह चिह्न संबंधी जानकारी को अनदेखा कर देता है, इसलिए abs() फ़ंक्शन तब उपयोगी होता है जब केवल मान का आकार मायने रखता है, न कि उसकी दिशा। इसका एक सामान्य उदाहरण दो रीडिंग के बीच का अंतर ज्ञात करना है:

temp_morning = 12
temp_night = -5
print("Temperature change:", abs(temp_morning - temp_night))

आउटपुट:

Temperature change: 17

निरपेक्ष मान के रोजमर्रा के उपयोगों में निम्नलिखित शामिल हैं:

  • दूरियां और अंतर: दो बिंदुओं, तापमानों या समय-सीमाओं के बीच के अंतर को मापना, चाहे इनमें से कोई भी मान बड़ा हो।
  • त्रुटि मेट्रिक्स: किसी अनुमानित मान और वास्तविक मान के बीच निरपेक्ष त्रुटि की गणना करना।
  • सहनशीलता जांच: यह जांचना कि कोई परिणाम लक्ष्य के कितना करीब है, जैसा कि abs(actual - expected) < 0.01.
  • वित्त: किसी लाभ या हानि की राशि को उसके चिह्न के बिना रिपोर्ट करना।

जैसा round() फ़ंक्शनabs() एक अंतर्निर्मित फ़ंक्शन है जिसे आप किसी भी मॉड्यूल को आयात किए बिना सीधे कॉल कर सकते हैं।

अक्सर पूछे जाने वाले प्रश्न

नहीं। abs() एक नया मान लौटाता है और अपने तर्क को कभी संशोधित नहीं करता, क्योंकि संख्याओं में Python ये अपरिवर्तनीय हैं। परिणाम को सुरक्षित रखने के लिए, इसे एक चर में असाइन करें, उदाहरण के लिए positive = abs(number)। मूल चर में इसका चिह्नांकित मान बना रहता है।

नहीं। स्ट्रिंग पास करने पर TypeError: bad operand type for abs(): 'str' त्रुटि आती है, क्योंकि abs() केवल पूर्णांक, फ्लोट या जटिल संख्याएँ ही स्वीकार करता है। स्ट्रिंग की लंबाई मापने के लिए len() फ़ंक्शन का उपयोग करें, जो उसमें मौजूद वर्णों की संख्या बताता है।

आप इसे मैन्युअल रूप से गणना कर सकते हैं। x के मान के लिए, max(x, -x) निरपेक्ष मान लौटाता है, और (x ** 2) ** 0.5 वास्तविक संख्याओं के लिए भी काम करता है। हालाँकि, अंतर्निहित abs() फ़ंक्शन अधिक स्पष्ट, तेज़ है और जटिल संख्याओं को भी संभालता है।

नहीं। ऊर्ध्वाधर-पट्टी संकेतन |x| गणितीय है, न कि Python वाक्यविन्यास; में Python | चिह्न बिटवाइज़ OR ऑपरेटर है। निरपेक्ष मान प्राप्त करने के लिए आपको अंतर्निहित abs() फ़ंक्शन को कॉल करना होगा, उदाहरण के लिए abs(-8), जो 8 लौटाता है।

__abs__ वह डंडर मेथड है जिसे abs() बैकग्राउंड में कॉल करता है। जब आप abs(obj) लिखते हैं, Python यह obj.__abs__() फ़ंक्शन को चलाता है। अपनी क्लास में __abs__ को परिभाषित करने से abs() फ़ंक्शन कस्टम ऑब्जेक्ट्स, जैसे कि वेक्टर या मनी टाइप पर काम कर सकता है।

लूप के बजाय वेक्टराइज़्ड वर्शन का उपयोग करें। NumPy का np.abs(array) एक नया ऐरे लौटाता है जिसमें प्रत्येक तत्व धनात्मक होता है, और pandas Series, Series.abs() प्रदान करता है। दोनों ही सभी तत्वों पर एक साथ निरपेक्ष मान लागू करते हैं, जो बड़े डेटासेट के लिए तेज़ होता है।

abs() त्रुटि और दूरी मेट्रिक्स का आधार है। माध्य निरपेक्ष त्रुटि (MAE) और L1 हानि, पूर्वानुमानों और लक्ष्यों के बीच निरपेक्ष अंतरों का योग हैं, और निरपेक्ष मान ग्रेडिएंट परिमाण को मापते हैं। संपूर्ण सरणियों के लिए, NumPy np.abs() प्रत्येक तत्व पर समान क्रिया को कुशलतापूर्वक लागू करता है।

GitHub Copilot एक छोटे से कमेंट से सीधे abs() कॉल, [abs(n) for n in nums] जैसे लिस्ट कॉम्प्रिहेंशन और NumPy np.abs() लाइनों का सुझाव देता है। यह एक मीन एब्सोल्यूट एरर फंक्शन भी तैयार कर सकता है, जिससे आप बार-बार कोड लिखने के बजाय लॉजिक की पुष्टि कर सकते हैं।

इस पोस्ट को संक्षेप में इस प्रकार लिखें: