بازگشتی به Point چگونه انجام می شود ؟
بازگشتی به Point چگونه انجام می شود ؟
بیایید کلاس Point از بخش 12-1 را به سبک شیءگراتري بنویسیم:
class Point:
def __init__(self, x=0, y=0):
self.x = x
self.y = y
def __str__(self):
return ‘(‘ + str(self.x) + ‘, ‘ + str(self.y) + ‘)’
متد مقداردهی اولیه مقادیر x و y را بهعنوان پارامترهاي اختیاري میگیرد. مقـدار پـیشفـرض براي هر پارامتر، 0 است. متد بعدي، __str ،__نمایش رشتهاي شیء Point را میگرداند. اگر یک کلاس متـدي بـه نام str را تدارك ببیند، رفتار پیشساختۀ str را لغو میکند.
>> p = Point(3, 4)
>>> str(p)
‘(3, 4)’
چاپ یک شیء Point مطلقاً __str __را بر روي شیء احضـار مـیکنـد، بنـابراین تعریـف __str __رفتار تابع print را هم تغییر میدهد:
>> p = Point(3, 4)
>>> print p
(3, 4)
وقتی ما یک کلاس جدید مینویسیم، تقریباً همیشه با نوشتن __init __شروع میکنیم که
این کار کلاس را براي وهلهسـازي شـیء سـادهتـر مـیسـازد و __str __کـه تقریبـاً همیشـه بـراي اشکال زدایی مفید است.
برای اموزش های ویدیویی زبان پایتون به بستر ویدیو های اموزشی بروید