Python Glossary Русский

Python 3.5+http.clientterm

http.HTTPStatus

status codes and methods

An enumeration of HTTP response codes (an IntEnum): HTTPStatus.NOT_FOUND equals 404 and carries the phrase 'Not Found' and a description.

Syntax

HTTPStatus.NOT_FOUND · HTTPStatus(404).phrase

Because it is an IntEnum, a member equals the number: HTTPStatus.OK == 200 is true, and it can go wherever an int is expected — send_response(), for instance. An unknown code, HTTPStatus(999), raises ValueError, so codes coming from outside need a check. The properties is_success, is_client_error and friends exist only since 3.12; on 3.11 use a range test such as 400 <= code < 500.

Examples

from http import HTTPStatus
s = HTTPStatus(404)
print(repr(s), s.phrase)  # → <HTTPStatus.NOT_FOUND: 404> Not Found
print(HTTPStatus.OK == 200, f'{HTTPStatus.CREATED}')  # → True 201
try:
    HTTPStatus(999)
except ValueError as e:
    print(e)  # → 999 is not a valid HTTPStatus
# Python 3.12+
from http import HTTPStatus
print(HTTPStatus.NOT_FOUND.is_client_error, HTTPStatus.OK.is_success)  # → True True

See also

Open in the full glossarydocs.python.orgReport an inaccuracy