티스토리 뷰
반응형
isinstance를 궁금하게 된 계기는 drf views.py를 조사하게 된 것이 계기였다.
def exception_handler(exc, context):
"""
Returns the response that should be used for any given exception.
By default we handle the REST framework `APIException`, and also
Django's built-in `Http404` and `PermissionDenied` exceptions.
Any unhandled exceptions may return `None`, which will cause a 500 error
to be raised.
"""
if isinstance(exc, Http404):
exc = exceptions.NotFound()
elif isinstance(exc, PermissionDenied):
exc = exceptions.PermissionDenied()
if isinstance(exc, exceptions.APIException):
headers = {}
if getattr(exc, 'auth_header', None):
headers['WWW-Authenticate'] = exc.auth_header
if getattr(exc, 'wait', None):
headers['Retry-After'] = '%d' % exc.wait
if isinstance(exc.detail, (list, dict)):
data = exc.detail
else:
data = {'detail': exc.detail}
set_rollback()
return Response(data, status=exc.status_code, headers=headers)
return None
views의 한 부분인데 이 때 isinstance가 무엇인 지 궁금하게 되었다.
찾아보니 별 거 없었고 해당 인스턴스가 이러한 타입이 맞는 지 확인하는 메소드 였다.
반응형
'파이썬' 카테고리의 다른 글
[python] [path] [PYTHONHOME] [PYTHONPATH] 파이썬 경로 문제 해결 (0) | 2021.08.18 |
---|---|
[python] assert 문 처리 (0) | 2021.08.04 |
[python] @property (0) | 2021.08.04 |
셀레늄 파이썬 카카오스토리 로그인 (0) | 2021.07.07 |
Python getattr/setattr/hasattr 사용법 (0) | 2021.06.24 |
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- docker-compose
- 파이썬
- Java
- 프로그래머스
- env
- 2021 KAKAO BLIND RECRUITMENT
- 면접
- Command Line
- 그래프
- BFS
- postgres
- docker
- ubuntu
- Pattern
- 카카오
- django
- dockerignore
- thread
- DRF
- 알고리즘
- 자바
- Celery
- Spring
- 백준
- setattr
- Collections
- PostgreSQL
- Python
- Linux
- headers
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함