কম্পিউটার

একটি পাইথন প্যাকেজ তৈরি করুন এবং অ্যাক্সেস করুন


এই নিবন্ধে, আমরা পাইথনের প্যাকেজ সম্পর্কে জানতে যাচ্ছি। প্যাকেজগুলি আমাদেরকে একটি সংগঠিত শ্রেণিবিন্যাসে প্যাকেজ এবং মডিউল গঠন করতে সাহায্য করে। আসুন দেখি কিভাবে পাইথনে প্যাকেজ তৈরি করা যায়।

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

আমরা একটি __init__.py, অন্তর্ভুক্ত করেছি একটি ডিরেক্টরির ভিতরে ফাইল পাইথনকে জানাতে যে বর্তমান ডিরেক্টরিটি একটি প্যাকেজ। যখনই আপনি একটি প্যাকেজ তৈরি করতে চান, তখন আপনাকে __init__.py অন্তর্ভুক্ত করতে হবে ডিরেক্টরিতে ফাইল। আপনি ভিতরে কোড লিখতে পারেন বা আপনার ইচ্ছা মত খালি রাখতে পারেন। এটি পাইথনকে বিরক্ত করে না৷

পাইথনে একটি প্যাকেজ তৈরি করতে নিচের ধাপগুলি অনুসরণ করুন

  • একটি ডিরেক্টরি তৈরি করুন এবং একটি __init__.py অন্তর্ভুক্ত করুন ফাইলটি পাইথনকে জানাতে যে বর্তমান ডিরেক্টরিটি একটি প্যাকেজ .
  • অন্যান্য সাব-প্যাকেজ বা ফাইলগুলি অন্তর্ভুক্ত করুন যা আপনি চান৷
  • এর পরে, বৈধ আমদানি দিয়ে সেগুলি অ্যাক্সেস করুন৷ বিবৃতি।

আসুন একটি সাধারণ প্যাকেজ তৈরি করি যার নিম্নলিখিত কাঠামো রয়েছে।

প্যাকেজ (বিশ্ববিদ্যালয়)

  • __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}"

student.py-এ আমাদের উপরে রয়েছে এবং faculty.py নথি পত্র. এর ভিতরে ক্লাস করা অ্যাক্সেস করার জন্য আরেকটি ফাইল তৈরি করা যাক। এখন, প্যাকেজ ডিরেক্টরির ভিতরে testing.py নামে একটি ফাইল তৈরি করুন এবং নিম্নলিখিত কোড অন্তর্ভুক্ত করুন।

উদাহরণ

# testing.py
# importing the Student and Faculty classes from respective files
from student import Student
from faculty import Faculty

# creating dicts for student and faculty
student_dict = {'name' : 'John', 'gender': 'Male', 'year': '3'}
faculty_dict = {'name': 'Emma', 'subject': 'Programming'}

# creating instances of the Student and Faculty classes
student = Student(student_dict)
faculty = Faculty(faculty_dict)

# getting and printing the student and faculty details
print(student.get_student_details())
print()
print(faculty.get_faculty_details())

আপনি testing.py ফাইলটি চালালে, আপনি নিম্নলিখিত ফলাফল পাবেন৷

আউটপুট

Name: John
Gender: Male
Year: 3

Name: Emma
Subject: Programming

আমরা দেখেছি কিভাবে পাইথনে একটি প্যাকেজ তৈরি এবং অ্যাক্সেস করতে হয়। এবং এটি একটি সাধারণ প্যাকেজ। একটি প্যাকেজের ভিতরে প্রচুর উপ-প্যাকেজ এবং ফাইল থাকতে পারে। আসুন দেখি কিভাবে সাবপ্যাকেজ মডিউল অ্যাক্সেস করতে হয়।

নিম্নলিখিত কাঠামোর সাথে একটি ডিরেক্টরি তৈরি করুন

  • প্যাকেজ (বিশ্ববিদ্যালয়)
    • __init__.py
    • সাবপ্যাকেজ (ছাত্র)
      • __init__.py
      • main.py
      • ...
    • testing.py

উপরের ছাত্র কোডটি অনুলিপি করুন এবং এটি এখানে রাখুন। এখন, আসুন দেখি কিভাবে এটি testing.py-এ অ্যাক্সেস করা যায় ফাইল testing.py-এ নিম্নলিখিতগুলি যোগ করুন৷ ফাইল।

উদাহরণ

# testing.py
from student.main import Student

# creating dicts for student
student_dict = {'name' : 'John', 'gender': 'Male', 'year': '3'}

# creating instances of the Student class
student = Student(student_dict)

# getting and printing the student details
print(student.get_student_details())

আপনি যদি testing.py চালান ফাইল, তারপর আপনি নিম্নলিখিত ফলাফল পাবেন.

আউটপুট

Name: John
Gender: Male
Year: 3

আমরা ছাত্র অ্যাক্সেস করেছি main.py থেকে ক্লাস ছাত্রের সাবপ্যাকেজের ভিতরে ফাইল একটি ডট (.) ব্যবহার করে . আপনি প্যাকেজ কাঠামোর উপর ভিত্তি করে যতটা চান তত গভীরে যেতে পারেন।

উপসংহার

টিউটোরিয়ালটিতে আপনার কোন সন্দেহ থাকলে, মন্তব্য বিভাগে উল্লেখ করুন।


  1. পাইথনে xlsxwriter মডিউল ব্যবহার করে এক্সেল ফাইল তৈরি করুন এবং লিখুন

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

  3. পাইথন কোড প্যাকেজিং এবং প্রকাশনা?

  4. আমি কিভাবে পাইথনে একটি নামস্থান প্যাকেজ তৈরি করব?