Python의 함수 호출에 잘못된 수의 매개 변수를 제공 할 때 발생하는 오류를 처리하는 방법은 무엇입니까?

StackOverflow https://stackoverflow.com/questions/456673

  •  19-08-2019
  •  | 
  •  

문제

함수에서 잘못된 수의 매개 변수를 제공하면 오류가 발생합니다. 어떻게 처리합니까?

나는 주었다

def fun_name(...):
    try:
        ...

    except TypeError:
        print 'Wrong no of arg'

그것은 작동하지 않습니다.

도와주세요.

도움이 되었습니까?

해결책

발신자는 수신기가 아닌이 예외를 트리거합니다.

수신 함수가 명시 적으로 인수 계수를 확인하려면 varargs를 사용해야합니다.

def fun_name(*args):
  if len(args) != 2:
    raise TypeError('Two arguments required')

다른 팁

기능을 호출하는 곳에서 처리해야합니다.

try:
  fun_name(...)
except TypeError:
  print "error!"

잘못된 수의 매개 변수가있는 함수를 호출하면 두 가지 가능성이 있습니다.

  • 임의의 인수를 처리하기 위해 기능을 설계하십시오. 그런 다음 추가 논쟁으로 무엇을 해야할지 알아야합니다. Alec Thomas의 답변은이 사건을 처리하는 방법을 보여줍니다.
  • 또는 당신의 디자인은 근본적으로 결함이 있으며 당신은 곤경에 처해 있습니다. 이 경우 오류를 잡는 것이 도움이되지 않습니다.

당신이 제거하면 try...catch 부품은 어떤 종류의 예외를 던지고 있는지 보여줄 것입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top