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

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

পাইথন নামপাই-তে numpy.issubclass_() মেথড ব্যবহার করে একটি ক্লাস অন্য ক্লাসের সাবক্লাস কিনা তা নির্ধারণ করা যায়। এটি পাইথনের বিল্ট-ইন issubclass()-এর সমতুল্য, কিন্তু আর্গুমেন্ট ক্লাস না হলে TypeError না ফেলে False ফেরত দেয়।

প্যারামিটারসমূহ

  • arg1: ইনপুট ক্লাস। arg1 যদি arg2-এর সাবক্লাস হয় তবে True ফেরত দেয়।
  • arg2: ইনপুট ক্লাস (বা ক্লাসের টাপল)। টাপল হলে arg1 যেকোনো একটির সাবক্লাস হলে True ফেরত দেয়।

পদ্ধতি

লাইব্রেরি ইম্পোর্ট করুন

import numpy as np

issubclass_() মেথড দিয়ে সাবক্লাস যাচাই করুন

print("ফলাফল...", np.issubclass_(np.float16, np.float32))
print("ফলাফল...", np.issubclass_(np.int32, np.signedinteger))
print("ফলাফল...", np.issubclass_('i4', np.signedinteger))
print("ফলাফল...", np.issubclass_(np.int64, int))
print("ফলাফল...", np.issubclass_(np.float64, float))
print("ফলাফল...", np.issubclass_('S8', str))
print("ফলাফল...", np.issubclass_(np.int16, float))
print("ফলাফল...", np.issubclass_(np.array([45, 89]), int))
print("ফলাফল...", np.issubclass_(np.int32, np.integer))

সম্পূর্ণ উদাহরণ

import numpy as np

print("Numpy-এ issubclass_() মেথড ব্যবহার\n")

print("ফলাফল...", np.issubclass_(np.float16, np.float32))
print("ফলাফল...", np.issubclass_(np.int32, np.signedinteger))
print("ফলাফল...", np.issubclass_('i4', np.signedinteger))
print("ফলাফল...", np.issubclass_(np.int64, int))
print("ফলাফল...", np.issubclass_(np.float64, float))
print("ফলাফল...", np.issubclass_('S8', str))
print("ফলাফল...", np.issubclass_(np.int16, float))
print("ফলাফল...", np.issubclass_(np.array([45, 89]), int))
print("ফলাফল...", np.issubclass_(np.int32, np.integer))

আউটপুট

Numpy-এ issubclass_() মেথড ব্যবহার
ফলাফল... False
ফলাফল... True
ফলাফল... False
ফলাফল... False
ফলাফল... True
ফলাফল... False
ফলাফল... False
ফলাফল... False
ফলাফল... True

ব্যাখ্যা:

  • float16 হল float32-এর সাবক্লাস নয় (False)
  • int32 হল signedinteger-এর সাবক্লাস (True)
  • 'i4' (string dtype) হল signedinteger-এর সাবক্লাস নয় (False)
  • int64 হল পাইথন int-এর সাবক্লাস নয় (False) — নামপাই স্কেলার টাইপ আলাদা
  • float64 হল পাইথন float-এর সাবক্লাস (True)
  • 'S8' (বাইট স্ট্রিং) হল str-এর সাবক্লাস নয় (False)
  • int16 হল float-এর সাবক্লাস নয় (False)
  • np.array(...) হল ক্লাস নয়, তাই False
  • int32 হল integer-এর সাবক্লাস (True)
  1. পাইথনে ইনহেরিটেন্স (Inheritance)

  2. পাইথনে ক্লাস মেথড বনাম স্ট্যাটিক মেথড

  3. পাইথনে সুপার ক্লাস থেকে সাবক্লাস কীভাবে তৈরি করবেন?

  4. পাইথনে একটি ক্লাস কি দেওয়া সুপার ক্লাসের সাবক্লাস তা কীভাবে চেক করবেন?