반응형
질문
나는 이렇게 할 수 있다는 것을 알고 있습니다:
try:
# 실패할 수 있는 작업 수행
except:
# 무엇이든 잘못되면 이렇게 하세요
또한 이렇게도 할 수 있습니다:
try:
# 실패할 수 있는 작업 수행
except IDontLikeYouException:
# 부탁하세요
except YouAreTooShortException:
# 사다리를 타세요
하지만 두 가지 다른 예외 내부에서 동일한 작업을 수행하려면 현재 생각할 수 있는 최선의 방법은 이렇게 하는 것입니다:
try:
# 실패할 수 있는 작업 수행
except IDontLikeYouException:
# 부탁하세요
except YouAreBeingMeanException:
# 부탁하세요
이렇게 (두 예외에 대한 작업이 부탁하세요
인 경우) 이렇게 할 수 있는 방법이 있습니까?
try:
# 실패할 수 있는 작업 수행
except IDontLikeYouException, YouAreBeingMeanException:
# 부탁하세요
이것은 정확히 다음과 같은 구문에 대한 일치하므로 실제로 작동하지 않습니다:
try:
# 실패할 수 있는 작업 수행
except Exception, e:
# 부탁하세요
그러므로 두 가지 다른 예외를 잡으려는 노력이 정확히 이루어지지는 않습니다.
이것을 수행하는 방법이 있습니까?
답변
파이썬 문서(Python Documentation)에서 다음과 같이 설명하고 있습니다:
예외 처리문에서는 괄호로 묶인 튜플 형태로 여러 예외를 지정할 수 있습니다. 예를 들어,
except (IDontLikeYouException, YouAreBeingMeanException) as e:
pass
또는 파이썬 2에서는 다음과 같이 작성할 수 있습니다:
except (IDontLikeYouException, YouAreBeingMeanException), e:
pass
예외와 변수를 쉼표로 구분하는 방식은 파이썬 2.6과 2.7에서도 여전히 작동하지만, 이제는 사용이 중지되었으며 파이썬 3에서는 작동하지 않습니다. 대신 as
를 사용해야 합니다.
반응형
'Python > Python FAQ' 카테고리의 다른 글
Python 바이트를 문자열로 변환하세요., Convert bytes to a string (0) | 2023.05.05 |
---|---|
Python 파일 복사하는 방법, How to copy files (0) | 2023.05.05 |
Python 현재 시간을 어떻게 얻을 수 있나요?, How do I get the current time? (0) | 2023.05.05 |
Python 판다스에서 데이터프레임의 행을 반복하는 방법, How to iterate over rows in a DataFrame in Pandas (0) | 2023.05.04 |
Python 함수 내에서 전역 변수 사용하기, Using global variables in a function (0) | 2023.05.04 |
댓글