Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

*अर्ग और **पायथन में kwargs


जब हम एक पायथन प्रोग्राम में एक फ़ंक्शन को परिभाषित करते हैं, तो इसका उद्देश्य फ़ंक्शन के तर्कों के लिए अलग-अलग मानों की आपूर्ति करके कोड को बार-बार निष्पादित करना होता है। इस डिज़ाइन में एक चुनौती यह है कि क्या होगा यदि हम उस फ़ंक्शन को कॉल करने पर हर बार संसाधित किए जाने वाले तर्कों की संख्या के बारे में सुनिश्चित नहीं हैं। यह वह जगह है जहां **args और **kwargs नामक विशेष तर्कों की आवश्यकता होती है। आइए उन्हें एक-एक करके देखें।

*args

*args हमें फ़ंक्शन में इनपुट के रूप में तर्कों की चर संख्या का उपयोग करने में सक्षम बनाता है। नीचे दिए गए उदाहरण में हम संख्याओं की एक श्रृंखला के गुणन के परिणाम का पता लगा रहे हैं। हर बार जब हम फ़ंक्शन को कॉल करते हैं तो इन नंबरों की संख्या अलग-अलग होती है।

उदाहरण

def findproduct(*many_nums):
result = 1
for num in many_nums:
result = result * num
print("Multiplication result:",result)

findproduct(3,9)
findproduct(2,11,10)

आउटपुट

उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं -

('Multiplication result:', 27)
('Multiplication result:', 220)

**kwargs

इसके बाद, ऐसे परिदृश्य होते हैं जब हम कीवर्ड तर्कों को पारित करना चाहते हैं, जो मूल रूप से किसी फ़ंक्शन के तर्क के रूप में कुंजी-मूल्य जोड़े होते हैं।

यहां फिर से, हम ऐसे कीवर्ड तर्कों की चर संख्या को फ़ंक्शन में पास कर सकते हैं। ऐसे तर्कों को **kwargs नाम दिया गया है। कृपया ध्यान दें कि ऐसे तर्कों का उपयोग करते समय दो तारक होते हैं। वास्तव में, इस तरह के कीवर्ड तर्क प्रोग्राम को एक पायथन डिक्शनरी के रूप में पास किए जाते हैं जिसमें कई कुंजी-मूल्य जोड़े होते हैं।

उदाहरण

def country_details(**state_info):
   print('\n\n')
   for k,v in state_info.items():
      print("{} is {}".format(k,v))

country_details(StateName="Telangana", Capital="Hyderabad",Population=3400000)
country_details(StateName="Andhra Pradesh", Capital="Amaravati",Population=1000000,ForestCoverage="30%")

आउटपुट

उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं -

StateName is Telangana
Population is 3400000
Capital is Hyderabad

StateName is Andhra Pradesh
Population is 1000000
ForestCoverage is 30%
Capital is Amaravati

  1. पायथन में सहसंबंध और प्रतिगमन

    सहसंबंध कुछ सांख्यिकीय संबंधों को संदर्भित करता है जिसमें दो डेटा सेट के बीच निर्भरता शामिल होती है। जबकि रैखिक प्रतिगमन एक आश्रित चर और एक या अधिक स्वतंत्र चर के बीच संबंध स्थापित करने के लिए एक रैखिक दृष्टिकोण है। एक एकल स्वतंत्र चर को रैखिक प्रतिगमन कहा जाता है जबकि कई स्वतंत्र चर को एकाधिक प्रति

  1. पायथन में =+ और +=क्या करते हैं?

    +=ऑपरेटर ऑब्जेक्ट के लिए सिंटैक्टिक शुगर है।__iadd__() फ़ंक्शन। पायथन डॉक्स से: इन विधियों को संवर्धित अंकगणितीय असाइनमेंट को लागू करने के लिए कहा जाता है (+=, -=, *=, @=, /=, //=, %=, **=, =, &=, ^=, |=). इन विधियों को ऑपरेशन को जगह में करने का प्रयास करना चाहिए (स्वयं को संशोधित करना) और परिणाम व

  1. पायथन में *args और **kwargs का उपयोग कैसे करें?

    पायथन में, *args के सिंगल-एस्टरिस्क फॉर्म को फंक्शन्स के लिए गैर-कीवर्ड वैरिएबल-लेंथ तर्क सूची भेजने के लिए पैरामीटर के रूप में उपयोग किया जा सकता है। यह देखा गया है कि तारांकन (*) यहाँ महत्वपूर्ण है, और शब्द args के साथ इसका अर्थ है कि गैर-कीवर्ड तर्कों की एक चर लंबाई सूची है। उदाहरण *args पर दिए