সেট ও ডিকশনারি (Set & Dictionary)

লেসন ৫০ / ৫১

সেট (Set)

Set-এ অনন্য (unique) মান থাকে — ডুপ্লিকেট স্বয়ংক্রিয়ভাবে মুছে যায়।

colors = {"লাল", "নীল", "সবুজ", "লাল"}
print(colors)  # {লাল, নীল, সবুজ} — ডুপ্লিকেট নেই!

colors.add("হলুদ")
colors.remove("নীল")

# Set Operations
a = {1, 2, 3, 4}
b = {3, 4, 5, 6}
print(a | b)   # Union: {1,2,3,4,5,6}
print(a & b)   # Intersection: {3,4}
print(a - b)   # Difference: {1,2}

# ডুপ্লিকেট সরানো
names = ["রহিম", "করিম", "রহিম", "জামিল"]
unique = list(set(names))  # [রহিম, করিম, জামিল]

ডিকশনারি (Dictionary)

Dictionary হলো key-value pair এর সংগ্রহ।

student = {
    "name": "করিম",
    "age": 25,
    "city": "ঢাকা",
    "courses": ["Python", "Web"]
}

# Access
print(student["name"])        # করিম
print(student.get("phone", "নেই"))  # নেই

# Add/Update
student["phone"] = "01712345678"
student["age"] = 26

# Methods
print(student.keys())    # সব key
print(student.values())  # সব value
print(student.items())   # সব pair

# Loop
for key, val in student.items():
    print(f"{key}: {val}")

# Dictionary Comprehension
squares = {x: x**2 for x in range(1, 6)}
# {1:1, 2:4, 3:9, 4:16, 5:25}