بکندباز

تابع ‎super()‎‎ در پایتون

مثال

ساخت یک کلاس که همه ی ویژگی ها و متد های کلاس دیگر را به ارث می برد:

class Parent:
  def __init__(self, txt):
     self.message = txt

  def printmessage(self):
     print(self.message)

class Child(Parent):
  def __init__(self,  txt):
    ‎super()‎.__init__(txt)

x = Child("Hello,  and welcome!")

x.printmessage()

توضیحات

تابع ‎super()‎ برای استفاده از دستورات متد ها و ویژگی های کلاس مادر در کلاس فرزند استفاده می شود. این تابع در مواقعی که می خواهیم علاوه بر استفاده از متد های مادر، دستوراتی را نیز به آن متد اضافه کنیم، کاربرد دارد.

سینتکس

‎super()‎
backendbaz

مدیر وب سایت بکندباز

دیدگاه‌ها

*
*

    امانوئل ویکتور پاسخ

    اگر من دوتا کلاس رو ارث بری کنم چطور میشه؟؟ اینکه تا اونجایی که فهمیدم از کلاس اولی رو فقط مورد نظر میگیره

    کد من :

    
    class person:
       def __init__(self,name,family,age):
           self.name = name
           self.family = family
           self._age = age
       @property
       def ShowInfo(self):
          return f"name : {self.name}\n----------------------\nfamily: {self.family}\n----------------------\nage : {self._age}"
    
    class username_len:
          def __init__(self,username) -> None:
             self.__username = username
          @property
          def __lenn__(self):
                 return len(self.__username)
    class user(person,username_len):
           def __init__(self,name,family,age,username,email):
                  person.__init__(self,name,family,age)
                  username_len.__init__(self,username)
                  self.username = username
                  self.email = email
    emanuel = user("emanuel","victor",15,"emnatkins","info@gmail.com")
    
    print(emanuel.ShowInfo)
    print(emanuel.__lenn__)
    طوفان پاسخ

    دم شما گرم عالی توضیح دادین ❤