Python是一種高級程序設計語言,具有強大的面向對象編程能力,其中包括繼承和遞歸。
繼承是面向對象編程的基礎之一,可以讓子類繼承父類的屬性和方法。Python中使用“class 子類名(父類名)”語法來實現繼承,例如:
class Animal: def __init__(self, name): self.name = name def eat(self): print(self.name + ' is eating') class Cat(Animal): def __init__(self, name): Animal.__init__(self, name) def meow(self): print('Meow') my_cat = Cat('Tom') my_cat.eat() # 輸出:Tom is eating my_cat.meow() # 輸出:Meow
遞歸是指在函數中調用自身的過程。Python中也支持遞歸,可以用來解決一些相對復雜的問題。例如,以下是一個遞歸求階乘的函數:
def factorial(n): if n == 0: return 1 else: return n * factorial(n-1) print(factorial(5)) # 輸出:120
遞歸雖然功能強大,但也有一些需要注意的地方。如果遞歸調用次數過多,可能會導致棧溢出。此外,過多的遞歸需要消耗大量的內存,對程序性能會造成影響,需要進行優化。