प्रथम-श्रेणी फ़ंक्शन
फ़ंक्शन पास करें और लौटाएँ
प्रथम-श्रेणी फ़ंक्शन, CoddyKit पर Python Academy का एक निःशुल्क पाठ है। यह 4 में से 1वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह Python Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Python Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
फ़ंक्शन ऑब्जेक्ट होते हैं
Python में फ़ंक्शन प्रथम-श्रेणी के ऑब्जेक्ट होते हैं। इन्हें चर में असाइन किया जा सकता है, डेटा संरचनाओं में संग्रहीत किया जा सकता है, आर्ग्युमेंट के रूप में पास किया जा सकता है और अन्य फ़ंक्शन से लौटाया जा सकता है — बिल्कुल संख्याओं या स्ट्रिंग की तरह।
def greet():
return 'hi'
print(type(greet))
print(greet())फ़ंक्शन को चरों में असाइन करना
फ़ंक्शन का नाम केवल एक संदर्भ होता है। इसे किसी दूसरे नाम को असाइन करें और उस नाम के माध्यम से कॉल करें — फ़ंक्शन को स्वयं संदर्भित करते समय कोष्ठक न लगाएँ।
def shout(text):
return text.upper()
yell = shout
print(yell('hello'))डेटा संरचनाओं में फ़ंक्शन
आप फ़ंक्शन को सूचियों या डिक्शनरी में संग्रहीत कर सकते हैं, फिर उन्हें गतिशील रूप से खोजकर कॉल कर सकते हैं।
def add(a, b):
return a + b
def sub(a, b):
return a - b
ops = {'+': add, '-': sub}
print(ops['+'](10, 4))
print(ops['-'](10, 4))फ़ंक्शन को आर्ग्युमेंट के रूप में पास करना
जो फ़ंक्शन किसी दूसरे फ़ंक्शन को पैरामीटर के रूप में लेता है, उसे उच्च-क्रम फ़ंक्शन कहा जाता है। पास किया गया फ़ंक्शन आर्ग्युमेंट होता है।
def apply(func, value):
return func(value)
print(apply(str.upper, 'cat'))
print(apply(len, 'cat'))map प्रथम-श्रेणी फ़ंक्शन का उपयोग करता है
map जैसे अंतर्निहित फ़ंक्शन फ़ंक्शन को एक स्थान से दूसरे स्थान पर पास करने पर निर्भर करते हैं। यहाँ प्रत्येक आइटम पर एक फ़ंक्शन लागू किया जाता है।
def square(n):
return n * n
result = list(map(square, [1, 2, 3, 4]))
print(result)filter एक प्रेडिकेट लेता है
filter उन आइटम को रखता है जिनके लिए पास किया गया फ़ंक्शन True लौटाता है। क्या रखा जाए, यह फ़ंक्शन तय करता है।
def is_even(n):
return n % 2 == 0
print(list(filter(is_even, range(10))))फ़ंक्शन लौटाना
एक फ़ंक्शन किसी दूसरे फ़ंक्शन को लौटा सकता है। इसके बाद लौटाए गए फ़ंक्शन को अलग से कॉल किया जा सकता है।
def get_greeter():
def greeter(name):
return 'Hello ' + name
return greeter
f = get_greeter()
print(f('Ada'))सॉर्ट करने की कुंजी के रूप में फ़ंक्शन
sorted एक key फ़ंक्शन स्वीकार करता है, जो प्रत्येक आइटम को क्रम निर्धारित करने के लिए उपयोग किए जाने वाले मान में बदलता है।
words = ['banana', 'fig', 'cherry']
by_length = sorted(words, key=len)
print(by_length)त्वरित फ़ंक्शन के रूप में लैम्ब्डा
lambda एक छोटा अनाम फ़ंक्शन होता है। आर्ग्युमेंट के रूप में एक बार के उपयोग के लिए यह बिल्कुल उपयुक्त है।
nums = [5, 1, 4, 2]
print(sorted(nums, key=lambda x: -x))फ़ंक्शन में एट्रिब्यूट होते हैं
फ़ंक्शन ऑब्जेक्ट होने के कारण, उनमें __name__ जैसे एट्रिब्यूट और __doc__ में डॉकस्ट्रिंग होती है।
def hello():
'Says hello.'
return 'hi'
print(hello.__name__)
print(hello.__doc__)डिस्पैच तालिका बनाना
इन विचारों को मिलाकर आप एक साफ़-सुथरी डिस्पैच तालिका बना सकते हैं, जो नाम के आधार पर फ़ंक्शन चुनती है — लंबी if/elif शृंखलाओं की आवश्यकता नहीं होती।
def start():
return 'starting'
def stop():
return 'stopping'
actions = {'start': start, 'stop': stop}
command = 'start'
print(actions[command]())त्वरित जाँच
Python में फ़ंक्शन के 'प्रथम-श्रेणी' होने का क्या अर्थ है?
पुनरावलोकन: प्रथम-श्रेणी फ़ंक्शन
आपने Python में सीखा कि:
- फ़ंक्शन ऐसे ऑब्जेक्ट होते हैं जिन्हें असाइन, संग्रहीत, पास और लौटाया जा सकता है।
- उच्च-क्रम फ़ंक्शन अन्य फ़ंक्शन लेते या लौटाते हैं (
map,filter,sortedकी कुंजी)। lambdaत्वरित अनाम फ़ंक्शन बनाता है।- इससे लंबी शर्तों के बजाय साफ़-सुथरी डिस्पैच तालिकाएँ बनाई जा सकती हैं।
ops = {'double': lambda x: x * 2}
print(ops['double'](21))एआई शिक्षक के साथ Python सीखें — निःशुल्क
अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।
- पाठ्यक्रम
- 76
- पाठ
- 320
अक्सर पूछे जाने वाले प्रश्न
क्या “प्रथम-श्रेणी फ़ंक्शन” पाठ निःशुल्क है?
हाँ—“प्रथम-श्रेणी फ़ंक्शन” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और Python Academy पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। Python Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
“प्रथम-श्रेणी फ़ंक्शन” में मैं क्या सीखूँगा?
फ़ंक्शन पास करें और लौटाएँ आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Python Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।
क्या Python Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?
पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Python Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 1वाँ पाठ है।
“प्रथम-श्रेणी फ़ंक्शन” पाठ पूरा करने में कितना समय लगता है?
CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।
क्या मैं इस Python Academy पाठ में कोड लिख और चला सकता हूँ?
हाँ। हर Python Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।
इस पाठ्यक्रम के सभी पाठ
- प्रथम-श्रेणी फ़ंक्शन
- क्लोज़र और मुक्त चर
- nonlocal और परिवर्तनीय स्थिति
- आंशिक फ़ंक्शन