कार्य
अहिलेसम्म, हामीले हाम्रा सबै कोड app.py मा लेखिरहेका छौं, तर हाम्रा कार्यक्रमहरू बढ्दै जाँदा, हामीलाई हाम्रो कोड व्यवस्थित गर्न अझ राम्रो तरिका चाहिन्छ। हामीले हाम्रो कोडलाई सानो, अधिक व्यवस्थित, र अधिक मर्मतयोग्य भागहरूमा विभाजन गर्न आवश्यक छ जसलाई हामी प्रकार्यहरू भन्छौं। प्रकार्य कोड को केहि लाइनहरु को लागी एक कन्टेनर हो जसले एक विशिष्ट कार्य गर्दछ।
उदाहरणका लागि, तपाईंले पाइथनमा केही बिल्ट-इन प्रकार्यहरूको बारेमा पहिले नै सिकेका छन् print()
र input()
। प्रत्येक प्रकार्यको एउटा उद्देश्य हुन्छ र एक विशेष कार्य कसरी गर्ने भनेर जान्दछ। त्यसोभए, जब हामी ठूला जटिल प्रोग्रामहरू बनाउँछौं, हामीले हाम्रो कोडलाई साना पुन: प्रयोज्य टुक्राहरूमा विभाजन गर्नुपर्छ, अर्थात् कार्यहरू।
अभिवादन सन्देश छाप्ने कार्यक्रम निर्माण गरेर यो अवधारणा बुझौं।
print('Hi there!')
print('Welcome aboard!')
यहाँ हामीसँग कोडका दुई लाइनहरू भएको एउटा साधारण प्रोग्राम छ। अब, भनौं, हामीले तिनीहरूलाई पुन: प्रयोग गर्न सक्ने प्रकार्यमा राख्नको लागि तिनीहरूलाई अन्य कार्यक्रमहरूमा चाहिन्छ।
मलाई एक आरक्षित किवर्ड परिचय गरौं def
Python मा, जुन परिभाषित को लागी छोटो छ र एक प्रकार्य परिभाषित गर्न को लागी प्रयोग गरिन्छ।
def greet_user():
print('Hi there!')
print('Welcome aboard!')
अब कोडको यो ब्लकले एक प्रकार्य परिभाषित गर्नेछ "greet_user
"त्यसपछि कोडहरूको रेखाहरूसँग। जब यो प्रकार्य बोलाइन्छ, यी दुई रेखाहरू कार्यान्वयन हुनेछन्। यसलाई प्रयोग गरौं:
print('start')
greet_user()
print('finish')
कार्यक्रम क्रमिक रूपमा कार्यान्वयन गरिएको छ, यसको मतलब तपाईंले कार्यक्रममा कल गर्नु अघि एक प्रकार्य परिभाषित गर्नुपर्नेछ।
परिमिति
परिभाषित प्रकार्यहरूले पाइथनको बिल्ट-इन प्रकार्यहरू भन्दा अलि फरक काम गर्दछ। उदाहरण को लागी, को मामला मा print()
एक प्रकार्य, यसले केहि जानकारी लिन्छ जुन हामी छाप्न चाहन्छौं, तर हाम्रो अभिवादन प्रकार्यले कुनै जानकारी लिदैन। यदि तपाइँ प्रयोगकर्ताको नाम यहाँ पास गर्न सक्नुहुन्छ र त्यसपछि, "नमस्ते त्यहाँ" भन्नको सट्टा, तपाइँ प्रयोगकर्ताको नाम प्रिन्ट गर्न सक्नुहुन्छ भने यो राम्रो हुनेछैन?
तपाइँ परिभाषित प्रकार्यको कोष्ठक भित्र प्यारामिटरहरू थपेर यो गर्न सक्नुहुन्छ। मलाई देखाउन देउ:
def greet_user(name):
print('Hi there!')
print('Welcome aboard!')
अब "name
कोष्ठक भित्र स्थानीय चर जस्तै काम गर्नेछ र हामी यसलाई कल गर्दा प्रयोगकर्ताको नाम पास गर्न सक्छौं।
greet_user('Shahbaz')
अब नाम प्यारामिटर सेट गरिएको छ "Shahbaz
"। यसलाई प्रयोग गर्न कार्यक्रम परिवर्तन गरौं।
def greet_user(name):
print(f'Hi {name}')
print('Welcome aboard!')
print('start')
greet_user('Shahbaz')
print('finish')
ध्यान दिनु पर्ने एउटा महत्त्वपूर्ण कुरा के हो भने पहिलो पङ्क्तिमा रहेको "नाम" लाई प्यारामिटर भनिन्छ जबकि नाम प्रदान गरिएको अर्थात् शाहबाजलाई आर्गुमेन्ट भनिन्छ।
अगाडि बढौं र यो कार्यक्रम सञ्चालन गरौं।
त्यसैले यी प्यारामिटरहरूसँग, हामी हाम्रो कार्यहरूमा जानकारी प्राप्त गर्न सक्छौं।
अब, केहि रोचक गरौं। मानौं तपाईं अभिवादन सन्देशमा अर्को नाम थप्न चाहनुहुन्छ। यो सरल छ।
def greet_user(name):
print(f'Hi {name}')
print('Welcome aboard!')
print('start')
greet_user('Shahbaz')
greet_user('Aayush')
print('finish')
अब नोट गर्नुहोस् कि जब एक प्रकार्य मा प्यारामिटर छ, हामी त्यो प्यारामिटर को लागी एक मान पास गर्न बाध्य छौं। यदि तपाईंले प्रकार्यबाट नाम हटाउनुभयो र कार्यक्रम चलाउनुभयो भने, हामीले त्रुटि प्राप्त गर्नेछौं। तपाईले एकल प्रकार्यमा धेरै प्यारामिटरहरू पनि प्रयोग गर्न सक्नुहुन्छ, अल्पविरामद्वारा छुट्याइयो।
जस्तै, greet_user(first_name, last_name):
। तर्कहरू पनि त्यस्तै ढाँचा हुनेछन्।
कीवर्ड तर्कहरू
अहिलेसम्म, हामीले सिकेका छौं कि जब पनि हामीले हाम्रो प्रकार्यहरूको लागि प्यारामिटरहरू परिभाषित गर्छौं हामीले सधैं मानहरू आपूर्ति गर्नुपर्छ अन्यथा हामीले त्रुटि पाउनेछौं। पछिल्लो कार्यक्रममा तर्कहरु 'Shahbaz'
र 'Bhatti'
पोजिशनल आर्गुमेन्ट भनिन्छ, जसको अर्थ कार्यक्रममा तिनीहरूको स्थिति वा अर्डरको कुरा हो।
पाइथनमा, हामीसँग किवर्ड आर्गुमेन्ट भनिने अर्को प्रकारको तर्क छ, जसको लागि स्थितिले फरक पार्दैन। मलाई तिनीहरूले कसरी काम गर्छन् भनेर देखाउन दिनुहोस्।
अन्तिम कार्यक्रम हेर्नुहोस । हामी यसलाई यसरी परिमार्जन गर्न सक्छौं:
def greet_user(first_name, last_name):
print(f'Hi {first_name} {last_name}')
print('Welcome aboard!')
print('start')
greet_user(first_name='Shahbaz', last_name='Bhatti')
print('finish')
अब first_name
र last_name
कीवर्ड प्यारामिटरहरू हुन्। तपाईं तिनीहरूको ठाउँहरू स्विच गर्न सक्नुहुन्छ र परिणाम समान हुनेछ।
अब यसको मतलब यो होइन कि हामीले सधैं कीवर्ड तर्कहरू प्रयोग गर्नुपर्छ। धेरै जसो समय हामी स्थितिगत तर्कहरू प्रयोग गर्छौं, तर केहि परिस्थितिहरूमा, यी कीवर्ड तर्कहरूले हामीलाई हाम्रो कोडको पठनीयता सुधार गर्न मद्दत गर्दछ।
कुञ्जी शब्द तर्कहरूको बारेमा तपाईले जान्न आवश्यक पर्ने अर्को कुरा छ। कीवर्ड आर्गुमेन्टहरू सधैं पोजिशनल आर्गुमेन्ट पछि आउनु पर्छ।
रिटर्न स्टेटमेन्ट
अहिलेसम्म हामीले कार्यहरू कसरी सिर्जना गर्ने र तिनीहरूको प्यारामिटरहरू प्रयोग गरेर जानकारी पठाउने भनेर सिकेका छौं। अब मानहरू फर्काउने प्रकार्यहरू कसरी सिर्जना गर्ने सिक्नुहोस्। यो विशेष गरी उपयोगी छ यदि तपाइँ केहि प्रकारको गणना गर्दै हुनुहुन्छ र तपाइँ आफ्नो प्रकार्य प्रयोग गर्ने जो कोहीलाई नतिजा फर्काउन चाहानुहुन्छ। मलाई देखाउन देउ।
एउटा प्रकार्य परिभाषित गरौं जसले संख्याको वर्ग गणना गर्नेछ।
def square(number):
return number*number
हामीले यस नम्बरलाई प्रकार्य बाहिर फर्काउन रिटर्न स्टेटमेन्ट प्रयोग गरेका छौं। अब, यदि हामीले यो प्रकार्यलाई कल गर्छौं भने, यसले जस्तै मान फर्काउँछ input()
समारोह। यसलाई टर्मिनलमा प्रिन्ट गरौं।
तपाईं तर्क गर्न सक्नुहुन्छ कि रिटर्न कथन प्रयोग नगरी समान परिणाम प्राप्त गर्न सकिन्छ। यसलाई जाँच गरौं।
हामी दुई चीजहरू देख्छौं, नम्बर 9, र कुनै पनि छैन। यहाँ के भइरहेको छ?
जब पाइथन दोभाषेले यो कोड कार्यान्वयन गर्छ, पहिले यसले वर्ग प्रकार्यलाई कल गर्नेछ र नियन्त्रण प्रकार्यमा सर्छ। यहाँ हामी यो दिइएको संख्याको वर्ग गणना गर्छौं र त्यसपछि यसलाई टर्मिनलमा प्रिन्ट गर्छौं।
अब, पूर्वनिर्धारित रूपमा, सबै प्रकार्यहरूले कुनै पनि मान फर्काउँदैन। त्यसैले यदि हामीसँग यहाँ रिटर्न स्टेटमेन्ट छैन भने, पूर्वनिर्धारित रूपमा पाइथनले कुनै पनि फर्काउँदैन। कुनै पनि वस्तु होइन जसले मानको अभावलाई प्रतिनिधित्व गर्दछ। यो C, C++, Java र Javascript मा केहि वा शून्य जस्तो छ।
लपेट्नुहोस्!
मलाई आशा छ तपाईंले कार्यहरूको महत्त्व बुझ्नुभएको छ।
यदि तपाइँ तपाइँको कोडिङ क्यारियर को समयमा ठूला र जटिल कार्यक्रमहरू लेख्ने योजना बनाउँदै हुनुहुन्छ भने तिनीहरू पाइथन शिक्षाको एक महत्वपूर्ण पक्ष हुन्।
जवाफ छाड्नुस्