Chapter 6 : Functions In Python
इस Web Page पर Python Function Chapter को add किया गया है | Python language हो या C++ , C , Java Script जैसी कोई और Programming Language सब Programming Languages मे Function महत्वपूर्ण और Common Concept है | Site पर दिए गए इस Function Chapter को करने के बाद आप , (1) Function Create करना (2) Function Call करना (3) Function Define करना जैसे काम कर पाएगे | Website पर Function Chapter से संबंधित Practice sets और Test भी add किए गए है ताकि आप Function से संबंधित हर Important Topic समझ सके |
Functions क्या होते है ?
किसी विशिष्ट कार्य को करने के लिए Functions का उपयोग किया जाता है | एक
Function कुछ इनपुट (पैरामीटर) ले सकता
है , उसे प्रोसेस करके आउटपुट दे सकता है | जब किसी एक ही code को बार - बार run किया जा रहा है |
तो इस code का function बना दिया जाता है फिर function बनाने के बाद बस function को call किया
जाता है | Python language मे functions 2 तरह के होते है |
Built-in-Function क्या होते है ?
ये वे functions होते है | जो Python के साथ आते है मतलब इन functions को अलग से install करने की Need नही होती है | कुछ Built-in-Function के उदाहरण है :- print() , max() len() | Python मे कुल 70 Built-in-Function होते है | Python के कुछ Built-in-Function का निम्नलिखित वर्णन किया गया है |
1. Print()
Python language मे print() तो python language की जान होती है , क्योंकि Print() Function के बिना तो कोई भी Program काम ही नही कर सकता है | Print() का उपयोग screen पर output display करने के लिए किया जाता है |
Code
1x = 2 2y = 5 3sum = x + y 4print(sum)
7
Code Explanation
x = 2 = > x नाम का एक variable create किया गया है , जिसमे 2 Value store की गई है |
sum = x + y = > sum नाम का एक variable create किया गया है , जो x और y की addition
value को store करता है |
print(sum) = > ये print() function screen पर sum variable को display करता है |
Features Of Print()
1. Use = > Python मे Print() function का उपयोग करने के लिए print() function का उपयोग किया जाता है
|
2. Updation = > हम print() function के काम मे changes नही कर सकते है |
3. Work = > print() function का काम screen पर Output show करने के लिए किया जाता है |
4. Multiple results = > Print() function के उपयोग से screen पर Multiple result display किए जा सकते
है |
5. Formatting Support = > हम output को सुंदर और readable बना सकते है |
2. input()
input() function भी Python मे print() function के जितना ही महत्वपूर्ण एक Function है , पर Input() function का काम print() function के विपरीत होता है , क्योंकि input() function data को show करने के बजाए data को input के रूप मे लेता है यानि की user से data लेने के लिए Python मे input() function का उपयोग किया जाता है |
Code
1num = input("enter your name") 2num2 = " hello" 3sum = num + num2 4print(sum)
enter your name :-shubham
shubham hello
Code Explanation
num = input("enter your name") = > num एक Variable है जो user से input मे user का name store
करता है |
num2 = "hello" = > num2 variable मे "hello" store किया गया है |
sum = > sum नाम का एक variable create किया गया है , जिसमे num और num2 variable की
addition value store होती है |
print(sum) = > ये print() function screen पर sum variable मे stored value को display करता है |
Features Of input()
1. Use = > user से input लेने के लिए input() function का उपयोग किया जाता है |
2. Updation = > क्योंकि input() function एक built-in Function है , इसलिए input() function मे हम कोई
Changes नही कर सकते है |
3. Work = > input() function का उपयोग user से input मे data लेने के लिए किया जाता है |
4. Multiple results = > input() function print() के जैसे एक साथ Multiple input values store नही कर सकता
है |
3. type()
Type() function Python Language का एक महत्वपूर्ण Function है क्योंकि Type() function के उपयोग से कुछ Errors को आने से रोका जा सकता है | Type() के उपयोग से किसी भी variable का data Type पता किया जा सकता है यानि variable मे किस तरह की value store है | नीचे दिए गए code editor मे Type() function से एक variable का data type पता किया गया है |
1x = 5 2print(type(x))
<class 'int'>
Code Explanation
x = 5 = > x नाम का एक variable create किया गया है , जिसमे 5 value store की गई है |
print(type(x)) = > ये print() function screen पर x variable का data type display करता है |
Features Of Type()
1. Use = > type() function से किसी भी variable का data type पता किया जा सकता है |
2. सभी data Types = > type() function सभी तरह के data types पर काम करता है |
3. Debugging = > Program में error आने पर programmer आसानी से check कर सकता है कि variable का
type सही है या नही |
4. comparision = > type function से direct Condition के base पर भी variable का data type पता
किया जा सकता है |
4. Dir()
Programmer के लिए Dir() के Concept के बारे मे जानना बहुत महत्वपूर्ण है क्योंकि dir() के उपयोग से कोई Programmer Program मे आने वाली errors को handle कर सकता है | Python मे dir() एक Built in Function है जिसका उपयोग किसी Function , Class या Module के अंदर available Attributes , Methods की list को देखने के लिए किया जाता है | नीचे math module मे उपलब्ध सभी functions को देखने के लिए एक dir() function का code दिया गया है |
1import math 2print(dir(math))
['sqrt', 'factorial', 'sin', 'cos', ...]
Advantages Of dir()
1. जो Students Python मे Programming करना सिख रहे है dir() function का Concept उन सबके लिए उनकी
Learning को सरल बनाने के लिए बहुत लाभदायक है |
2. लिखे गए Program मे error पता करने मे बहुत सहायक है जैसे आपने program मे mahtematics module
file का उपयोग किया लेकिन ऐसी कोई module file है ही नही तो आप dir() से आसानी पता कर सकते
है |
3. dir() function Output मे methods , functions etc. की list return करता है |
4. किसी भी object पर काम करता है |
5. Python introspection tool का part है
5. max()
किसी variable मे store values मे से सबसे बडी value को display करने के लिए max function का उपयोग किया जाता है | बडी equations को solve करने के लिए max() का बहुत अधिक उपयोग किया जाता है |
1x = [5 , 7, 6,4] 2print(max(x))
7
Code Explanation
x = [5 , 7, 6,4] = > x नाम का एक variable create किया गया है , जिसमे कुछ integer numbers store किए
गए है |
print(max(x)) = > ये print() function screen पर x variable मे stored सबसे बडे number को show
करता है |
Features Of Max()
1. Default Value = > यदि Programmer iterable को empty रखता है तो error से बचने के लिए max()
function default value देता है |
2. Program Logic = > comparisions करने के लिए अलग - अलग Conditional Statements लिखने
की जरूत नही होती है |
3. Multiple Values = > max() function multiple values को support करता है |
4. work = > max() function list , set , tuple सब काम करता है यानि की max() function collections में
से भी maximum value निकाल सकता है |
Built-in-Function के लाभ
Built-in-Function के लाभ निम्नलिखित दिए गए है |
1. Time Saving : Built-in-Functions के उपयोग से code लिखते समय time की बचत होती है |
क्योंकि कोई logic नही लिखना पडता है |
2. No Error : Built-in-Functions पहले से test करके बनाए हुए होते है , इसलिए इन
Functions के उपयोग से कोई error नही आता |
3. speed : Built-in-Functions की speed बहुत तेज होती है | क्योंकि ये pre defined
function होते है |
4. easy to learn : Built-in-Functions का उपयोग करना और इनको समझना बहुत सरल है |
5. Behavior : चाहे कोई भी Built-in-Function हो उसका हर program मे same behavior रहता
है | ऐसा नही होता की किसी program मे वो function कुछ काम करता है और किसी मे कुछ |
Global Variables क्या होते है ?
Global variable का उपयोग Function को secure और clean बनाए रखने के लिए किया जाता है | Global Variables से मतलब है कि किसी Function के बाहर कोई Variable Declare करना और फिर उस variable पर काम करना यानि की जिन variables को किसी Function के बाहर Declare किया जाता है उन variables को Global variables कहा जाता है | Global variable का उपयोग करने के लिए global keyword का उपयोग किया जाता है | ये global keyword Python मे पहले reserved है | नीचे Global variable का उपयोग कर एक function बनाया गया है |
1x = 10 2def change(): 3 global x 4 x = 20 5change() 6print(x)
20
Code Explanation
x = 10 = > x नाम का एक variable create किया गया है जिसमे 10 value store की गई है |
def change(): = > change नाम का एक function create किया गया है |
global x = > x variable को global variable के रूप मे उपयोग किया गया है |
x = 20 = > x variable मे 20 value store की गई है |
change() = > change function को call की गई है |
print(x) = > ये print() function screen पर x variable को display करता है |
Rules Of Global Variables
1. Global Variables का मतलब ही है कि वो variables जिनको
function के बाहर declare किया जाता है , इसलिए Global variables का उपयोग करने के लिए Global Variables
को हमेशा function के बाहर Declare करे |
2. Global variables को declare करने के बाद Global variables को Function के अंदर से Access किया
जा सकता है |
3. Global Variables का उपयोग करने के लिए , Global Variables को access करने के लिए
global
keyword का उपयोग किया जाता है |
4. Global variables को declare करने के लिए कोई global keyword का उपयोग किया जाता है |
5. Python Programs मे अधिक Global Variables Declare नही करने चाहिए |
Advantages Of Global Variables
1. Multiple Functions Use = > क्योंकि Global variables को Functions के बाहर Declare
किया
जाता है , इसलिए एक Global variable का उपयोग एक से अधिक Functions मे किया जा सकता है |
2. Short Programs = > क्योंकि एक ही Global Variable को एक से अधिक Functions मे उपयोग
किया
जा सकता है |
इस कारण लिखे जा रहे Functions और Programs की lenght कम हो जाती है |
3. Memory Saving = > कोई variable declare करने
के बाद वो variable memory मे Space ले लेता है , लेकिन Global variables के उपयोग से Memory Saving भी होती
है
|
4. Data Sharing = > कई Functions को एक ही value की जरूरत होने पर Global
variables से ये काम सरल हो जाता है यानि हर Function मे Same variable Declare नही करना पडता |
5. Access = > ये Global Variables को किसी भी function मे उपयोग किया जा सकता है |
Local Variables क्या होते है ?
Python language मे Local Variables का Concept Global variables के Concept के बिलकुल विपरीत है | Local variables से मतलब है कि वो Variables जिनका उपयोग किसी special Function के लिए किया जाता है यानि की Local variables को Function के बाहर नही Function के अंदर declare किया जाता है | Local variables को declare करने के लिए Python मे अलग से किसी Keyword का उपयोग नही किया जाता है | Function के अंदर declared variables default रूप से Local Variables होते है | नीचे Local variable से संबंधित एक Function create किया गया है |
1def show(): 2 x = 10 3 print(x) 4show()
10
Code Explanation
def show(): = > show नाम का function create किया गया है |
x = 10 = > x एक variable है जिसमे 10 value store की गई है |
print(x) = > ये print() function screen पर x variable को display करता है |
show() = > show function को call की गई है |
Advantages Of Local Variables
1. Temporary Variables = > Local variables Function के run होने पर काम करते
है और Function run होते ही destroy हो जाते है , इसलिए ये Temporary Variables होते है और Memory पर
अधिक Effect नही डालते |
2. Secure = > क्योंकि ये variables Function के अंदर declare किए जाते है और कोई
Function इन Variables का उपयोग नही कर सकता है इस कारण ये variables Secure रहते है |
3. Function Indentation = > क्योंकि ये variables Function के अंदर ही declare किए
जाते है , इसलिए इन Variables के उपयोग से Function मे Indentation होती है |
4. Keyword Use = > Local Variables को create करने के लिए या access करने
के लिए किसी keyword की जरूरत नही होती |
Local vs Global Variable Difference
| Base | Global Variables | Local Variables |
|---|---|---|
| Definition | Function के बाहर create किए जाते है | | Function के अंदर create किए जाते है | |
| Access | बाहर से access किए जा सकते है | | बाहर से access नही किए जा सकते है | |
| Scope | पूरे Program तक | केवल Function तक |
| Keyword | global keyword का उपयोग किया जाता है | | किसी keyword की जरूर नही |
Return Statement क्या होते है ?
Funtions Create करने से पहले return statement के बारे मे जान लेना बहुत जरूरी है , क्योंकि return statement का उपयोग केवल Python ही नही C C++ जैसी language मे भी किया जाता है | return statement के उपयोग से हम Function से कोई value return करवा सकते है यानि की return statement का उपयोग function से कोई value वापस लेने के लिए किया जाता है | नीचे एक function दिया गया है जिसमे return statement का उपयोग किया गया है |
1def add(a, b): 2 return a + b 3result = add(5, 3) 4print(result)
8
Code Explanation
def add(a , b): = > add नाम का एक function create किया गया है जिसमे दो variables pass किए गए है |
result = add(5 , 3) = > एक result नाम का variable create किया गया है जिसमे 5 और 3 value pass
की गई है |
print(result) = > ये print() function result variable को display करता है |
NOTE : 1. Return statement function को stop कर देता है |
2. return statement से multiple values भी return की जा सकती है |
3. बिना कोई value pass किए return statement None return करता है |
Advantages of Return Statement
1. function stop = > function मे जहा पर भी return statement का उपयोग किया जाता वहा पर
return statement function को stop कर देती है |
2. Multiple Values = > Function से multiple operation perform करने के लिए पूरा
logic set किए बीना return statement से multiple values return की जा सकती है |
3. None Values = > user के Function मे return statement से कोई value return करवाए
बीना return statement अपने आप None value को return कर देती है |
4. Function Reusability = > return statement के उपयोग से Function को reuse किया जा सकता
है |
User-defined Function क्या होते है ?
ये वे functions होते है | जिनको user अपने काम को सरल बनाने
के लिए create करता है | User-defined function की कोई निर्धारित सांख्य नही है क्योंकि
ये function user के दवारा create किए जाते है | functions को create करने के लिए def()
function का उपयोग किया जाता है |
नीचे एक function create करने का Syntax दिया गया है |
1def function-name(parameters) 2# function body
code Explanation
def = > def से function create किया जाता है |
function-name = > def के बाद create किए जा रहे function का नाम लिखा जाता है |
parameters = > create किए जा रहे function मे कुछ parameters/variables declare किए जा सकते है |
function body = > इतना करने के बाद function की body लिखी जाती है |
supose करे की यदि आप को कहा जाए , की
एक ऐसा program बनाया जो 2 और 5 का
addition करे | तो मेरे अनुसार आप ये code लिखेगे |
x = 5
y = 5
sum = x + y
print(sum)
अगर फिर से आप को कहा जाए , कि अब 6 और 6 का addition करने का code लिखे तब भी आप एक ऐसा
ही code लिखेगे | supose करो | कि यही काम 20 बार करना पडे तो आपकी रूची खतम हो जाएगी | एक ही
code को बार - बार repeat ना करना पडे ऐसे मे
आप एक function का उपयोग कर सकते है |
1def sum(a , b): 2 print(a + b) 3 4sum(2 , 5)
7
Code Explanation
def sum(a , b) = > sum नाम का एक function create किया गया जिसमे a और b parameters भी
pass किए गए है |
print(a + b) = > ये print() function screen पर a और b variable की addition value को display करता है
|
sum(2 , 5) = > sum function को call की गई है और 2 5 values parameters मे pass की गई है |
Function create करने के Rules
functions को create करने से पहले Functions को create करने के rules को समझ लेना जरूरी है ताकि
बाद मे किसी error का सामना ना करना पडे | Function को create करने के rules निम्नलिखित दिए गए है |
1. किसी भी function के नाम के बीच मे कोई space ना हो |
2. Function के नाम मे किसी spacial symbol (# , space, ,@ , comma) का उपयोग ना करे |
3. Function को हमेशा def keyword से ही create करे |
4. Function के नाम मे underscore (_) का उपयोग किया सकता है |
user-defined-Function के लाभ
user-defined-Function के लाभ निम्नलिखित दिए गए है |
1. Code Reusability : किसी function को एक बार बनाने के बाद बार - बार use कर सकते है |
2. Customization : user-defined-Functions को user अपने अनुसार Create करता है , इसलिए
user-defined-Function का सारा control user के पास होता है |
3. desgin : जब user अपने अनुसार Function Create करता है तो user अपने अनुसार code का
Logic बना सकता है |
4. बडे programs : बडे programs को छोटे-छोटे functions में बंटा जा सकता है, जिससे program को समझना
और manage करना आसान होता है |
5. code clearity : functions के उपयोग से programs मे clearity आती है और ना ही किसी
mistake की सभावना नही होती है |
Diffrence Bitween Built In And User-defined Function
| Basis | Built In Function | User Defined Function |
|---|---|---|
| Definition | Python मे पहले से मौजूद है | | इन Function को User खुद से Create करता है | |
| Purpose | सामान्य काम जल्दी करने के लिए | Specific काम करने के लिए |
| Control | इनमे User Changes नही कर सकता है | | इनमे User Changes कर सकता है | |
| Creation | User को बनाने की जरूत नही है | | User def() के उपयोग से इनको create कर सकता है | |
| Examples | Print() , input() , def() | user अ प ने अनुसार खुद से create करता है | |
Recursive Functions क्या होते है ?
Recursive Function Python का एक महातवपूर्ण Concept है जिसके उपयोग से बडे logics को chhota करके लिखा जा
सकता है
Recursive Function user defined Functions होते है | Recursive Functions वे Functions होते है जो अपने काम
को पूरा
करने के लिए अपने आपको बार - बार call करते है | Recursive Function के दो महात्वपूर्ण parts होते है
1. Base Case = > ये Recursive function का वो Part है जिसमे function रूक जाता है |
2. Recursive Case = > Recursive Function का उपयोग जिस कारण किया जाता है ये वो part है
इस Part मे Recursive Function अपने आपको बार - बार call करता है |
नीचे Recursive Function का एक Python Code दिया गया है |
1def factorial(n): 2 if n == 1: 3 return 1 4 else: 5 return n * factorial(n-1) 6print(factorial(5))
120
Code Explanation
def factorial(n): = > factorial नाम का function create किया गया है और n parameter pass किया गया है
|
if n == 1 = > n variable मे stored value 1 के बराबर होने पर ये if statement True होती है |
return 1 = > 1 को return करता है |
else = > if statement के false होने के बाद else statement चलेगी |
return n * factorial(n-1) = > n को (n-1 के factorial) से गुणा करके result वापस (return) करो |
print(factorial(5)) = > factorial function को call की गई है और n variable मे 5 value pass की गई है |
Nested Function
Nested Function Python Language का एक महत्वपूर्ण Concept है यह बिलकुल Nested If Condition के जैसा ही है Nested Functions वे Functions होते है जिनको किसी दूसरे Function के अंदर Create किया जाता है | Nested Function को Inner function के नाम से भी जाना जाता है और Nested Function को normal Function के जैसे ही create किया जाता है | नीचे दिए गए Code editor मे Inner Function का Syntax दिया गया है |
1def outer_function(): 2 def inner_function(): 3 print("This is inner function") 4 inner_function()
120
Code Explanation
def outer_function(): = > outer_function नाम का एक function create किया गया है |
def inner_function(): = > inner_function नाम का एक function create किया गया है |
print("This is inner function") = > ये print() function दिए गए message को display करता है |
inner_function() = > inner_function नाम के function को call की गई है |
Advantages Of Nested Function
1. Program Organization = > जब केवल एक ही Helper Function किसी Function के साथ उपयोग
किया जाना
होता है तो उस Helper Function को उस Main Function के अंदर ही create करना Better होता है |
2. Encapsulation = > क्योंकि Nested Funtion को Outer Function के अंदर बनाया जाता है ,
इसलिए
Outer Function के अलावा कोई और Function Inner / Nested Function को access नही कर सकता है जिसके
कारण Inner Function के अंदर का data secure रहता है |
3. Indentation = > क्योंकि Inner Function को Outer Function मे बनाया जाता है इसी वजह से
Program मे Indentation सही हो जाती है |
4. Outer Function Access = > क्योंकि Inner Function को Outer Function के अंदर create
किया
जाता है इसी कारण से Outer Function से Inner Function को Access किया जा सकता है |
5. Debugging = > Nested Function से Program Clean दिखता है , इसलिए create किए Function
से संबंधित कोई error आता है तो उस error को पता करपाना बहुत सरल हो जाता है |
Function Aliasing
बहुत से Programmer ऐसे होते है जो Functions को secure रखने और अच्छी Programming करने के लिए Functions को ऐसे Create करते है कि उस Function को केवल वही समझ पाए ऐसा करने के लिए वे लगभग Function Aliasing का उपयोग करते है | Function Aliasing से किसी Function का उपयोग function के real name से नही बल्कि Programmer से defin किए गए Name से किया जाता है यानि की Function Aliasing से मतलब है की Create किए गए Function को किसी और Name से उपयोग करना | जब किसी Function का Alias बनाया जाता है तो Function Copy नही होता है , बल्कि सिर्फ reference (address) assign होता है कहने का मतलब है कि दोनों नाम same function को point करते है | नीचे दिए गए Code editor मे Function Aliasing का एक Code दिया गया है |
1def greet(): 2 print("Hello Python") 3welcome = greet 4greet() 5welcome = greet
Hello Python Hello Python
Code Explanation
def greet(): = > greet नाम का function create किया गया है |
print("Hello Python") = > ये print() function दिए गए message को display करता है |
welcome = greet = > welcome एक variable है जिसकी value greet function के बराबर है |
greet() = > greet function को call की गई है |
Advantages of Function Aliasing
1. Short Name = > किसी Function का Long Name होने पर उस Function को छोटे Name के साथ
उपयोग किया जा सकता है जिससे Computer Memory पर कम Effect पडता है |
2. Security = > क्योंकि Function का Alias Programmer set करता है , इसलिए कोई बाहरी
Person Function का Purpose आसानी समझ नही सकता जिस कारण data secure रहता है |
3. Multiple Reference = > किसी Function को Multiple Variables से Access किया जा सकता
है जिसके कारण Function पर काम करना सरल हो जाता है |
4. Backup = > अगर Function गलती से delete हो जाए तो Programmer आसानी से Function के
Alias
से Function को Run कर सकता है |
5. Extra Brackets = > Function का Alias बनाते Time Extra () Parentheses Brackets का
उपयोग नही किया जाता है जिसके कारण Beginner के लिए Function Alias create करपाना सरल हो जाता है |
You have completed This Chapter ! 🎉
Now you can choose any one of the following options to test your knowledge :
Help Center
Users and we all help you together .