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.

? 26 min✓ BeginnerPrerequisite: Conditions & loops

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.

python
def calculate_discount(price, percent):
 discount = price * percent / 100
 return price - discount

final_price = calculate_discount(1000, 20)
print(final_price) # 800.0
DEF

Function definition start karta hai; code run tab hota hai jab call karte ho.

PARAMETERS

Function ke local input names�price aur percent.

RETURN

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.

Good design habit: Aisa function banao jo ek kaam kare. calculate_discount ko payment save karne aur UI print karne dono ka kaam mat do.
Try it: progress functionFunction ko new arguments ke saath call karo
Run Python dabayein

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

Core function pattern complete?

Great. Ab roadmap par collections ke advanced forms, files, modules aur OOP ka next sequence dekho.