[python] 함수의 상속과 다형성

목차

  1. 상속
  2. 다형성
  3. 예제 코드
  4. 참고 자료

상속

파이썬에서 함수는 다른 함수로부터 상속될 수 있습니다. 이는 이미 존재하는 함수를 기반으로 새로운 함수를 만들 수 있음을 의미합니다. 상속을 통해 코드를 재사용하고 유지보수를 용이하게 할 수 있습니다.

def parent_function():
    # 부모 함수의 내용
    pass

def child_function():
    # 자식 함수의 내용
    pass

위의 예시에서 child_functionparent_function으로부터 상속받을 수 있습니다.

다형성

파이썬에서는 함수의 다형성을 지원합니다. 다형성은 동일한 이름을 가진 함수가 다른 기능을 수행할 수 있는 특성을 말합니다. 이는 코드의 유연성을 증가시키고 유지보수를 용이하게 만듭니다.

def function_overload(a, b=None):
    if b is not None:
        return a + b
    else:
        return a

위의 예시에서 function_overload 함수는 매개변수 b의 유무에 따라 다른 동작을 수행합니다.

예제 코드

다음은 상속과 다형성을 활용한 간단한 예제 코드입니다:

class Animal:
    def speak(self):
        pass

class Dog(Animal):
    def speak(self):
        return "Woof!"

class Cat(Animal):
    def speak(self):
        return "Meow!"

def make_speak(animal):
    print(animal.speak())

dog = Dog()
make_speak(dog)  # 출력: "Woof!"

cat = Cat()
make_speak(cat)  # 출력: "Meow!"

참고 자료

  1. 파이썬 공식 문서: 파이썬 객체 지향 프로그래밍
  2. 뇌를 자극하는 파이썬