Python의 함수 호출에 잘못된 수의 매개 변수를 제공 할 때 발생하는 오류를 처리하는 방법은 무엇입니까?
-
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
부품은 어떤 종류의 예외를 던지고 있는지 보여줄 것입니다.
제휴하지 않습니다 StackOverflow