چندریختی یکی از ویژگیهای قدرتمند زبان برنامهنویسی پایتون است که به برنامهنویسان امکان میدهد تا یک قطعه کد را به چندین شکل مختلف اجرا کنند. این ویژگی به برنامهنویسان امکان میدهد تا برنامههایی را بنویسند که بر اساس ورودیهای مختلف، رفتار متفاوتی از خود نشان دهند.
یکی از روشهای استفاده از چندریختی در پایتون، استفاده از توابع چندگانه است. توابع چندگانه، توابعی هستند که بر اساس نوع ورودیهای آنها، رفتار متفاوتی از خود نشان میدهند. برای تعریف یک تابع چندگانه، میتوان از کلیدواژهی def استفاده کرد و در پارانتز ورودیهای مورد نیاز تابع را تعریف کرد. سپس با استفاده از کلیدواژهی @ و نام تابع چندگانه، میتوان بر اساس نوع ورودیها، تابع را تعریف کرد.
مثال زیر نحوه استفاده از توابع چندگانه را نشان میدهد:
class Shape:
def area(self):
pass
class Rectangle(Shape):
def __init__(self, width, height):
self.width = width
self.height = height
def area(self):
return self.width * self.height
class Circle(Shape):
def __init__(self, radius):
self.radius = radius
def area(self):
return 3.14 * self.radius * self.radius
shapes = [Rectangle(5, 10), Circle(7)]
for shape in shapes:
print(shape.area())
در این مثال، یک کلاس اصلی به نام Shape تعریف شده است که یک تابع area خالی دارد. سپس دو کلاس Rectangle و Circle تعریف شدهاند که از کلاس Shape ارثبری میکنند و تابع area را بازنویسی میکنند. در انتها، یک لیست از اشکال به نام shapes تعریف شده است و با استفاده از حلقه for، تابع area هر شکل را فراخوانی میکنیم و مساحت آن را چاپ میکنیم.
با استفاده از توابع چندگانه، برنامهنویسان میتوانند کدهایی را بنویسند که بر اساس نوع ورودیها، رفتار متفاوتی از خود نشان دهند. این ویژگی به برنامهنویسان امکان میدهد تا کدهایی را بازنویسی کنند و به صورت سادهتر و خواناتری برنامهنویسی کنند.
دیدگاهها