Lesson 05 — Foundation

EK VALUE NAHI.
POORA COLLECTION.

Aapke paas sirf ek learner nahi, learners ki list hai. Ek task nahi, daily tasks hain. List ordered, mutable collection hai — yani values ki sequence jise aap later change kar sakte ho.

⏱ 40 min• BeginnerPrerequisite: Strings

Masala Daani samjho: dabba = variable (container ka naam)

LIST — [] square brackets
"haldi"102.53+4jTrue
order fix • badal sakte ho
TUPLE — () gol brackets
"haldi"102.53+4jTrue
order fix • fix hai, badal nahi sakte
SET — {} curly, bina key
"haldi"102.53+4jTrue
order nahi • duplicate gayab
DICT — {key: value}
"masala": "haldi""daam": 10"vajan": 2.5"code": 3+4j"fresh": True
key se nikalo • badal sakte ho

Ek dabba (variable) ke andar 4 dibbi — aur har dibbi me wahi 5 masale: string, int, float, complex, bool. Aage har lesson apni dibbi khol kar dikhayega.

WHAT: list square brackets mein banti hai

python▶ Run
skills = ["Python", "SQL", "Pandas"]

print(skills[0]) # Python
print(len(skills)) # 3
ORDERED

Index stable hota hai: first item index 0 par.

MUTABLE

Item add, update aur remove kar sakte ho.

FLEXIBLE

Technically mixed types possible hain; practical code mein consistent types rakho.

WHEN: collection ko update karna

append() end mein add karta hai; remove() matching value ko hatata hai; pop() index se item nikalta hai. Production code mein item exists karta hai ya nahi, woh check karna bhi zaruri hota hai.

python▶ Run
tasks = ["Variables revise", "Strings practice"]
tasks.append("Lists exercise")
tasks[0] = "Variables project"

print(tasks)
# ['Variables project', 'Strings practice', 'Lists exercise']

WHERE: simple task tracker

List aapke first mini-project ka building block hai. Abhi loop complete nahi hua, fir bhi aap collection ko create/update aur display kar sakte ho.

Try it: learning task trackerApne tasks add/remove karke run karo
Run Python dabayein

Useful list operations

Quick check

Do strings ai aur ml wali Python list likho.

List square brackets se banti hai aur text ko quotes chahiye.

Access karna: index se nikalo

Har item ka number (index) hota hai — 0 se start. Aakhri item -1 se milta hai, aur tukda [1:3] se. Range ka end include nahi hota.

python▶ Run
fruits = ["aam", "kela", "seb", "angoor"]
print(fruits[0])   # aam
print(fruits[-1])  # angoor (aakhri)
print(fruits[1:3])  # [kela, seb] (3 include nahi)
print(len(fruits))  # 4
print("seb" in fruits)  # True

Add karna: teen tareeke

End me jodna ho to append(), beech me insert(), poori list milani ho to extend(). Teenon ki jagah fix hai.

python▶ Run
cart = ["doodh"]
cart.append("bread")  # end me
cart.insert(0, "anda")  # shuru me
cart.extend(["makkhan", "chai"])  # poori list
print(cart)

Remove karna: value, index ya sab

Value pata ho to remove(), position pata ho to pop() (wapas bhi deta hai!), index range udana ho to del, sab saaf karna ho to clear().

python▶ Run
cart = ["anda", "doodh", "bread", "makkhan"]
cart.remove("doodh")  # value se
nikala = cart.pop(0)  # index se + wapas
print(nikala, cart)
del cart[0]  # index uda do
cart.clear()  # khaali
print(cart)  # []

Loop chalana: har item par kaam

List ka asli power loop me hai — har item par same kaam. Index bhi chahiye to enumerate(), chhota kaam ho to comprehension ek line me.

python▶ Run
marks = [72, 91, 65]
for m in marks:
    print(m + 5)  # grace marks

for i, m in enumerate(marks):
    print(i, m)

naye = [m + 5 for m in marks]
print(naye)

Sort karna: order lagao

Marks ki list ho ya naam — sort() chhota-se-bada lagata hai. Yaad rakho: sort() kuch wapas nahi deta (None), list andar hi badal jati hai. Bina badle nayi sorted list chahiye to sorted().

python▶ Run
marks = [72, 91, 65]
marks.sort()
print(marks)  # [65, 72, 91]

names = ["Ramesh", "Aman"]
print(sorted(names, reverse=True))  # ulte order me, original same

Copy aur join: do list ek saath

b = a copy NAHI hai — dono same list ko pakadte hain! Asli copy a.copy() se banti hai. Do list jodne ke liye + ya extend().

python▶ Run
a = [1, 2]
b = a
b.append(3)
print(a)  # [1, 2, 3] — a bhi badal gaya!

c = a.copy()
c.append(4)
print(a, c)  # [1, 2, 3] [1, 2, 3, 4]

full = [1, 2] + [3, 4]
print(full)  # [1, 2, 3, 4]

Methods quick table

MethodKya karta haiExample
append(x)End me jodnaa.append(5)
insert(i, x)Beech me dalnaa.insert(0, 5)
remove(x)Value se hatanaa.remove(5)
pop(i)Index se nikalnaa.pop()
clear()Khaali karnaa.clear()
index(x)Position dhoondhnaa.index(5)
count(x)Ginti karnaa.count(5)
sort()Order laganaa.sort()
reverse()Ulta karnaa.reverse()
copy()Asli copyb = a.copy()
extend(list)Poori list jodnaa.extend(b)

Quick check

[10, 20, 30] me kitne items hain? len() use karo.

len() list ki lambai deta hai — gin kar likho.

🎓
Guido-style insight: List dynamic array hai — andar se fixed-size dabba jo zaroorat par bada hota hai. Isliye append() mostly O(1) hai. Ye design C-python ki raftaar ka raaz hai.
python▶ Run
# Unpythonic: khaali list me loop se bharna
squares = []
for i in range(5):
    squares.append(i * i)

# Pythonic: comprehension
squares = [i * i for i in range(5)]
print(squares)  # [0, 1, 4, 9, 16]

MNC tip: Comprehension vs loop — dono likhna aana chahiye, padhna comprehension aani chahiye.

Common mistakes

Lists clear?

Ab program ko data ke basis par decisions lena sikhate hain.

Popular courses: Data Science Course in Lucknow · AI Course in Lucknow · Python Course in Lucknow · Power BI Course · Data Analytics Course