مفهوم class در python - ساعد قلی پور | Saed Gholipour
ساعد قلی پور | saedgholipour

ساعد قلی پور | Saed Gholipour

مفهوم class در python

OOP in Python

مفهوم OOP در Python

محتوا :

  • تعریف کلاس
  • ساخت یک کلاس
  • ترکیب دو یا چند کلاس
  • مفهوم ارث بری
تعریف کلاس

در ابتدا میخواهیم با مفهوم کلاس ها و شئی ها در برنامه نویسی آشنا بشیم.شما یک انسان رو به عنوان شئی در نظر بگیرید. یک انسان اسم، فامیلی و به عنوان مثال یک شماره تلفن داره.

ساخت یک کلاس

اگه بخواهیم کلاس انسان رو توی پایتون بنویسیم به صورت زیر عمل میکنیم.

				
					class Person():
     def __init__(self, f_name,  l_name, phone_number):
         self.f_name = f_name
         self.l_name = l_name
         self.phone_number = phone_number

				
			

با توجه به کد بالا برای ساخت یک کلاس از نوع Person ابتدا از کلمه کلیدی class استفاده میکنیم و بعد اسم کلاس رو مینویسیم.

فانکشن __init__ : این فانکشن به اسم constructor یا همون سازنده میشناسن. در همه ی کلاس ها بدون استثنا، اولین ارگومانی که میگیره self هست. همونطور که میبینید ارگومان های دیگه ای مثل f_name و بقیه رو از کار بر میگیره. پس اگه یک ارگومان دیگه ای میخواستیم از کاربر بگیریم، کافی بود که اسمشو اضافه کنیم.

 

توی خط 3 تا 5، متغیر ها رو به self یا همون شئی خودمون ارجاع میکنیم. برای اینکه یک متغیری درست کنیم که از کلاس Person باشه، به صورت زیر عمل میکنیم:

				
					class Person():
    def __init__(self, f_name, l_name, phone_number):
        self.f_name = f_name
        self.l_name = l_name
        self.phone_number = phone_number

p1 = Person('Alex', 'Smith', 12345)
p2 = Person('Sam', 'Jesus', 9762684)
				
			

با توجه به خط 7 و 8 کد، الان ما دو شئی از کلاس Person ساختیم که مشخصاتشونو با توجه به فانکشن __init__ توی پرانتز نوشتم.

در ادامه میخوام یک متد دیگه اضافه کنم که روی هرکدوم از متغیر p1 و p2 اجراش کنیم، یک خروجی بهمون بده.

				
					class Person():
    def __init__(self, f_name, l_name, phone_number):
        self.f_name = f_name
        self.l_name = l_name
        self.phone_number = phone_number

    def __str__(self):
        print(f'name: {self.f_name} and last name {self.l_name}')
        print(f'the phone number is {self.phone_number}')

p1 = Person('Alex', 'Smith', 12345)
p2 = Person('Sam', 'Jesus', 9762684)

p1.__str__()
print('----------')
p2.__str__()
				
			

خروجی به دست اومده به صورت زیر میشود :

				
					name: Alex and last name Smith
the phone number is 12345
----------
name: Sam and last name Jesus
the phone number is 9762684
				
			

به همین راحتی یک کلاس تحت عوان Person نوشتیم. پیشنهاد میکنم خودتون برای یک موضوع دیگه هم همینکار رو بکنید. 🙂

Saed

هزاران خط کد، یک هدف مشخص.

مطالب بیشتر از این نویسنده
امتیاز: 5 از 5 (1 رای)
💬

هنوز نظری ثبت نشده

اولین نفری باشید که برای این مقاله نظر می‌دهید!

✍️ ارسال نظر

ایمیل شما منتشر نخواهد شد. فیلدهای ضروری علامت‌گذاری شده‌اند *