কম্পিউটার

অজগরে ডান্ডার বা ম্যাজিক পদ্ধতি


ম্যাজিক পদ্ধতি যা আমাদের অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং-এ কিছু সুন্দর কৌশল করতে দেয়। এই পদ্ধতিগুলি উপসর্গ এবং প্রত্যয় হিসাবে ব্যবহৃত দুটি আন্ডারস্কোর (__) দ্বারা চিহ্নিত করা হয়। উদাহরণস্বরূপ, ইন্টারসেপ্টর হিসাবে কাজ করে যা কিছু শর্ত পূরণ হলে স্বয়ংক্রিয়ভাবে কল করা হয়।

পাইথনে __repr__ একটি অন্তর্নির্মিত ফাংশন যা একটি বস্তুর "অফিসিয়াল" স্ট্রিং উপস্থাপনা গণনা করতে ব্যবহৃত হয়, যখন __str__ একটি অন্তর্নির্মিত ফাংশন যা একটি বস্তুর "অনুষ্ঠানিক" স্ট্রিং উপস্থাপনা গণনা করে।

উদাহরণ কোড

class String:
   # magic method to initiate object
   def __init__(self, string):
      self.string = string
# Driver Code
if __name__ == '__main__':
   # object creation
   my_string = String('Python')
   # print object location
   print(my_string)

আউটপুট

<__main__.String object at 0x000000BF0D411908>

উদাহরণ কোড

class String:
   # magic method to initiate object
   def __init__(self, string):
      self.string = string
   # print our string object
   def __repr__(self):
      return 'Object: {}'.format(self.string)
# Driver Code
if __name__ == '__main__':
   # object creation
   my_string = String('Python')
   # print object location
   print(my_string)

আউটপুট

Object: Python

আমরা এতে একটি স্ট্রিং যোগ করার চেষ্টা করছি।

উদাহরণ কোড

class String:
   # magic method to initiate object
   def __init__(self, string):
      self.string = string
   # print our string object
   def __repr__(self):
      return 'Object: {}'.format(self.string)
# Driver Code
if __name__ == '__main__':
   # object creation
   my_string = String('Python')
   # concatenate String object and a string
   print(my_string + ' Program')

আউটপুট

TypeError: unsupported operand type(s) for +: 'String' and 'str'

এখন স্ট্রিং ক্লাসে __add__ পদ্ধতি যোগ করুন

উদাহরণ কোড

class String:
   # magic method to initiate object
   def __init__(self, string):
      self.string = string
   # print our string object
   def __repr__(self):
      return 'Object: {}'.format(self.string)
   def __add__(self, other):
      return self.string + other
# Driver Code
if __name__ == '__main__':
   # object creation
   my_string = String('Hello')
   # concatenate String object and a string
   print(my_string +' Python')

আউটপুট

Hello Python

  1. কিভাবে আমরা একটি স্ট্রিং মূল্যায়ন করব এবং পাইথনে একটি বস্তু ফেরত দেব?

  2. কিভাবে একটি পাইথন ক্লাস অবজেক্ট একটি স্ট্রিং রূপান্তর?

  3. পাইথনে টাইমস্ট্যাম্প স্ট্রিংকে ডেটটাইম অবজেক্টে কীভাবে রূপান্তর করবেন?

  4. কিভাবে একটি Python তারিখ স্ট্রিং একটি তারিখ অবজেক্টে রূপান্তর করবেন?