हां, पायथन O दोनों का समर्थन करता है वस्तु उन्मुख और प्रक्रियात्मक प्रोग्रामिंग भाषा क्योंकि यह एक उच्च स्तरीय प्रोग्रामिंग भाषा है जिसे सामान्य प्रयोजन प्रोग्रामिंग के लिए डिज़ाइन किया गया है। पायथन बहु-प्रतिमान हैं, आप प्रोग्राम या पुस्तकालय लिख सकते हैं जो इन सभी भाषाओं में बड़े पैमाने पर प्रक्रियात्मक, वस्तु-उन्मुख या कार्यात्मक हैं। यह इस बात पर निर्भर करता है कि कार्यात्मक से आपका क्या मतलब है। पायथन में एक कार्यात्मक भाषा की कुछ विशेषताएं हैं।
पायथन में ओओपी की अवधारणाएं, क्लासेस, एनकैप्सुलेशन, पॉलीमॉर्फिज्म, इनहेरिटेंस आदि .. इसे ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग लैंग्वेज बनाती हैं।
इसी तरह हम अजगर के माध्यम से लूप, फॉर, जबकि आदि ..और नियंत्रण संरचना का उपयोग करके प्रक्रियात्मक कार्यक्रम बना सकते हैं।
उदाहरण
class Rectangle: def __init__(self, length, breadth, unit_cost=0): self.length = length self.breadth = breadth self.unit_cost = unit_cost def get_perimeter(self): return 2 * (self.length + self.breadth) def get_area(self): return self.length * self.breadth def calculate_cost(self): area = self.get_area() return area * self.unit_cost # breadth = 120 cm, length = 160 cm, 1 cm^2 = Rs 2000 r = Rectangle(160, 120, 2000) print("Area of Rectangle: %s cm^2" % (r.get_area())) print("Cost of rectangular field: Rs. %s " %(r.calculate_cost()))
आउटपुट
Area of Rectangle: 19200 cm^2 Cost of rectangular field: Rs. 38400000