request.POST.get ( 'sth') 대 request.POST [ 'sth']-차이점?
차이점은 무엇입니까
request.POST.get('sth')
과
request.POST['sth']
비슷한 질문을 찾지 못했습니다. 둘 다 저에게 동일하게 작동합니다. 별도로 사용할 수 있다고 가정하지만 내가 틀렸을 수도 있습니다. 그것이 내가 묻는 이유입니다. 어떤 아이디어?
request.POST['sth']에 없는 KeyError경우 예외 'sth'가 발생합니다 request.POST.
request.POST.get('sth')반환합니다 None경우 'sth'에 있지 않습니다 request.POST.
또한 .get키가 사전에없는 경우 반환되는 기본값의 추가 매개 변수를 제공 할 수 있습니다. 예를 들면request.POST.get('sth', 'mydefaultvalue')
이것은 모든 파이썬 사전의 동작이며 request.POST.
이 두 조각은 기능적으로 동일합니다.
첫 번째 스 니펫 :
try:
x = request.POST['sth']
except KeyError:
x = None
두 번째 스 니펫 :
x = request.POST.get('sth')
이 두 조각은 기능적으로 동일합니다.
첫 번째 스 니펫 :
try:
x = request.POST['sth']
except KeyError:
x = -1
두 번째 스 니펫 :
x = request.POST.get('sth', -1)
이 두 조각은 기능적으로 동일합니다.
첫 번째 스 니펫 :
if 'sth' in request.POST:
x = request.POST['sth']
else:
x = -1
두 번째 스 니펫 :
x = request.POST.get('sth', -1)
일반 사전 액세스와 .get ()으로 액세스하는 것의 주요 차이점은
같은 것을 사용 request.POST['sth']하면 ket 'sth'가 존재하지 않는 경우 주요 오류가 발생합니다. 그러나 get () 메서드 사전을 사용하면 더 나은 오류 처리를 제공 할 수 있습니다.
request.POST.get('sth')
'sth does not exist'키를 반환하지 않고 get ()에 두 번째 매개 변수를 제공하면 기본값으로 반환됩니다.
data = request.POST.get('sth','my_default_value')
'sth'키가 존재하지 않으면 데이터의 값은입니다 my_default_value. 이것이 일반적인 사전 액세스에 비해 get () 메서드를 사용하는 이점입니다.
참고 URL : https://stackoverflow.com/questions/12518517/request-post-getsth-vs-request-poststh-difference
'IT TIP' 카테고리의 다른 글
| ASP.NET MVC 작업에서 절대 URL 가져 오기 (0) | 2020.11.03 |
|---|---|
| stdint.h와 inttypes.h의 차이점 (0) | 2020.11.03 |
| jQuery는 클래스 속성이없는 모든 div를 가져옵니다. (0) | 2020.11.03 |
| 독립형 Java 애플리케이션에서 Spring 3 autowire 사용 (0) | 2020.11.03 |
| 동일한 형식으로 비디오 크기를 줄이고 프레임 크기를 줄입니다. (0) | 2020.11.03 |