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

পাইথনে টাইপ চেক করার ক্যানোনিক্যাল (Canonical) উপায়

পাইথনে টাইপ চেক করার দুটি মূল উপায় রয়েছে, যাদের ব্যবহার ক্ষেত্র আলাদা।

১. সঠিক টাইপ চেক (Exact Type) — type(x) is Type

x = "Hello"
if type(x) is str:
    print("x is an instance of str")

আউটপুট

x is an instance of str

ব্যবহার: সাবক্লাস এক্সক্লুড করতে চাইলে (খুব র‍্যার)।

২. ইনস্ট্যান্স চেক (সাবক্লাস সহ) — isinstance(x, Type)

x = "Hello"
if isinstance(x, str):
    print("x is an instance of str")

আউটপুট

x is an instance of str

ব্যবহার: সাধারণ প্রোগ্রামিংয়ের জন্য সর্বোত্তম। সাবক্লাসও ভ্যালিড মনে করে (Liskov Substitution Principle)।

তুলনা

class Base: pass
class Derived(Base): pass

d = Derived()
type(d) is Base      # False (Exact match)
isinstance(d, Base)  # True (Subclass OK)

সুপারিশ

  • প্রায়ইশ্ব isinstance() ব্যবহার করুন
  • type() is শুধু খুব নির্দিষ্ট কেসে (মেটাপ্রোগ্রামিং, সিঙ্গেলটন চেক)
  • ডক টাইপিং (duck typing) প্রিয়: hasattr(obj, 'method') বা EAFP (try/except)
  1. পাইথনে ভাজকগুলোর গণনা জোড় কি বিজোড় তা যাচাই করার প্রোগ্রাম

  2. পাইথনে স্ট্রিং খালি কিনা যাচাই করার সবচেয়ে সুন্দর উপায়

  3. পাইথনে স্ট্রিং অ্যালফানিউমেরিক কিনা যাচাই করার রেজেক্স

  4. পাইথন এক্সসেপশন লগ করার সেরা উপায়