Lesson 08 � Reuse
EK KAAM.
EK NAAM.
Agar aapka code ek hi calculation ya validation baar-baar kar raha hai, copy-paste se pehle ruk jao. Function logic ko naam deta hai, repeat use possible banata hai aur code ko test karna easier karta hai.
WHAT: function ka contract
Function ka naam batata hai woh kya karega. Parameters batate hain kya input chahiye. return caller ko usable result deta hai. Isse functions small aur predictable bante hain.
def calculate_discount(price, percent):
discount = price * percent / 100
return price - discount
final_price = calculate_discount(1000, 20)
print(final_price) # 800.0Function definition start karta hai; code run tab hota hai jab call karte ho.
Function ke local input names�price aur percent.
Calculation ka output caller ko deta hai; print se alag responsibility.
print vs return: important difference
print() user/developer ko output dikhata hai. return value ko program ke next step ke liye deta hai. Calculation function mostly return kare; display boundary par print karo.
calculate_discount ko payment save karne aur UI print karne dono ka kaam mat do.Scope: local variable local hota hai
Function ke andar banne wala variable normally bahar available nahi hota. Yeh accidental conflicts ko kam karta hai. Parameter ko clear naam do aur global state par unnecessary depend mat karo.
Abhi ke baad kya?
Arguments, default values, *args, **kwargs, lambda, recursion, decorators aur generators roadmap mein next deepen honge. Pehle simple inputs + explicit return ki habit solid karo.
Quick check
Ek function named greet shuru karne wali line likho jo name parameter leti ho.
def keyword, function name, parentheses mein parameter, aur colon.
Common mistakes
- Function define karke call na karna�definition alone output nahi produce karti.
returnke baad same block mein likha code run nahi hota.- Function ka result chahiye to
printke bajaye return value ko variable mein store karo. - Parameter name aur outer variable ko confuse mat karo; scope ko consciously read karo.
Great. Ab roadmap par collections ke advanced forms, files, modules aur OOP ka next sequence dekho.