কম্পিউটার টিউটোরিয়াল

পাইথনে প্যাকেজ তৈরি ও অ্যাকসেস করা


পাইথন প্যাকেজ কী?

প্যাকেজ হলো মডিউল গুলোকে হায়ারার্কিক্যালি অর্গানাইজ করার উপায়। একটি ডিরেক্টরির ভিতরে __init__.py ফাইল থাকলে পাইথন সেটিকে প্যাকেজ হিসেবে ধরে।

প্যাকেজ তৈরি - ধাপে ধাপে

১. ডিরেক্টরি স্ট্রাকচার


university/           ← প্যাকেজ রুট
├── __init__.py       ← খালি বা কোড থাকতে পারে
├── student.py        ← মডিউল
└── faculty.py        ← মডিউল

২. মডিউল কোড


# student.py
class Student:
    def __init__(self, student):
        self.name = student['name']
        self.gender = student['gender']
        self.year = student['year']
    
    def get_student_details(self):
        return f"Name: {self.name}\nGender: {self.gender}\nYear: {self.year}"

# faculty.py
class Faculty:
    def __init__(self, faculty):
        self.name = faculty['name']
        self.subject = faculty['subject']
    
    def get_faculty_details(self):
        return f"Name: {self.name}\nSubject: {self.subject}"

৩. প্যাকেজ ব্যবহার (testing.py)


# testing.py (প্যাকেজ ডিরেক্টরির ভিতরে বা বাইরে)
from student import Student
from faculty import Faculty

student_dict = {'name': 'John', 'gender': 'Male', 'year': '3'}
faculty_dict = {'name': 'Emma', 'subject': 'Programming'}

student = Student(student_dict)
faculty = Faculty(faculty_dict)

print(student.get_student_details())
print()
print(faculty.get_faculty_details())

সাব-প্যাকেজ (নেস্টেড প্যাকেজ)


university/
├── __init__.py
├── student/              ← সাব-প্যাকেজ
│   ├── __init__.py
│   └── main.py
└── testing.py

সাব-প্যাকেজ থেকে ইমপোর্ট


# testing.py
from student.main import Student  # ডট নোটেশন

student_dict = {'name': 'John', 'gender': 'Male', 'year': '3'}
student = Student(student_dict)
print(student.get_student_details())

__init__.py এর ভূমিকা

  • পাইথন ৩.৩+ তে অপশনাল (নেমস্পেস প্যাকেজ)
  • প্যাকেজ লেভেল ইনিশিয়ালাইজেশন কোড রাখতে পারেন
  • __all__ দিয়ে পাবলিক API কন্ট্রোল করুন

উপসংহার

  • প্যাকেজ = __init__.py সহ ডিরেক্টরি
  • ডট (.) নোটেশন দিয়ে নেস্টেড অ্যাকসেস
  • বড় প্রজেক্টে কোড অর্গানাইজেশনের জন্য অপরিহার্য
  1. পাইথনে xlsxwriter মডিউল ব্যবহার করে এক্সেল ফাইল তৈরি ও লেখা

  2. পাইথন ব্যবহার করে স্টপওয়াচ তৈরি করা

  3. পাইথন কোড প্যাকেজিং ও পাবলিশিং (Packaging and Publishing Python Code)

  4. পাইথনে নেমস্পেস প্যাকেজ তৈরি করার উপায়