টাপল ও অ্যারে (Tuple & Array)

লেসন ৫১ / ৫১

টাপল (Tuple)

Tuple হলো List-এর মতো কিন্তু অপরিবর্তনযোগ্য (immutable) — একবার তৈরি হলে পরিবর্তন করা যায় না।

# তৈরি
point = (10, 20)
rgb = (255, 128, 0)
single = (42,)          # একটি element-এ কমা লাগবে!

# Access (List-এর মতোই)
print(point[0])          # 10
print(rgb[1:])           # (128, 0)

# Unpacking
x, y = point
print(x, y)              # 10 20

r, g, b = rgb
print(f"Red={r}, Green={g}, Blue={b}")

# কখন Tuple ব্যবহার করবেন?
# ✅ ডেটা পরিবর্তন হবে না (coordinates, RGB, config)
# ✅ Dictionary key হিসেবে (List key হতে পারে না)
# ✅ Function থেকে একাধিক মান return

Array (numpy)

Python-এর built-in array module আছে, তবে numpy অনেক শক্তিশালী।

import numpy as np

# Array তৈরি
arr = np.array([1, 2, 3, 4, 5])
print(arr * 2)       # [2, 4, 6, 8, 10]
print(arr + 10)      # [11, 12, 13, 14, 15]

# 2D Array (Matrix)
matrix = np.array([[1, 2], [3, 4]])
print(matrix.shape)  # (2, 2)

# বিশেষ Array
print(np.zeros(5))        # [0, 0, 0, 0, 0]
print(np.ones(3))         # [1, 1, 1]
print(np.arange(0, 10, 2))  # [0, 2, 4, 6, 8]
print(np.linspace(0, 1, 5)) # 0 থেকে 1 এ ৫টি সমান ভাগ

# গাণিতিক
print(np.mean(arr))   # গড়: 3.0
print(np.sum(arr))    # যোগফল: 15
print(np.max(arr))    # সর্বোচ্চ: 5