آموزش متدهای hasattr, getattr, setattr, delattr در پایتون

June 2020

متد hasattr بررسی میکند آیا یک آبجکت اتریبیوت خاصی دارد یا نه. اگر داشته باشد مقدار True را return کرده در غیر اینصورت False را برمیگرداند:

class Person:
   name = "John"
   age = 36


>>> hasattr(Person, 'age')  # True
>>> hasattr(Person, 'city')  # False

 

متد getattr مقدار اتریبیوت آبجکت را برمیگرداند اگر اتریبیوت درخواستی وجود نداشته باشد ارور AttributeError برگشت  داده میشود:

class Person:
   name = "John"
   age = 36


>>> getattr(Person, 'age')  # 36
>>> getattr(Person, 'city')  # AttributeError

 

با استفاده از متد setattr میتوانید اتریبیوت‌های جدیدی را به آبجکت اضافه کنید:

class Person:
   name = "John"
   age = 36


>>> setattr(Person, 'city', 'New York')

>>> getattr(Person, 'city')  # New York

 

با استفاده از متد delattr میتوانید یک اتریبیوت را از آبجکت حذف کنید:

class Person:
   name = "John"
   age = 36


>>> delattr(Person, 'age')

>>> getattr(Person, 'age')  # AttributeError

 

ارسال نظر

اگر قراره سوالی بپرسید که داخلش کد هست، بهتره از کدتون عکس بگیرید و به ایمیلی که پایین نوشتم بفرستید