파이썬에서 함수 오버로딩

C ++를 배우기 때문에 C ++ 프로그래밍에서 여러 생성자에 문제가 없습니다. 
나중에 생각 해보니 파이썬에는 switch 문이 없다는 것을 갑자기 깨달았습니다. 유연성을 최대한 활용
하려면 코드를 간결하게 유지하기 위해 동일한 사전 대신 사전을 사용하십시오  . 생성자는 하나뿐입니다. 가장 긴 매개 변수 목록은 다른 생성자를 포함합니다. 
가변 길이 매개 변수가 필요한 경우 기본값은 숫자를 얻기 위해 사용됩니다. 즉, 동일한 이름의 함수 하나만 충분합니다. 파이썬 코드는 정말 간결 
하지만 단점은 다음과 같습니다. 컴파일 중에는 호출이없고 오버로드 된 함수가 여러 개 정의되어 있어도 오류가보고되지 않으며 호출 매개 변수가 적을 때만 함수가 오버로드되었을 때보고됩니다. 
 


class stu(object):
    print ('stu')

    #默认值构造函数
    def __init__(self, stuID,stuType='Primary'):
        self.ID=stuID
        self.Type=stuType

    def display(self):
        print(self.ID,self.Type)

#使用默认值实现构造函数的多态
stu1=stu(100)
stu2=stu(200,"midschool")
#stu.display()  #不能直接调用类的一般方法
stu1.display()
stu2.display()

 

추천

출처blog.csdn.net/sichuanpb/article/details/112692868