Basically, the 1st browser language which the code below gets is used to display the browser UI(Default) but not 100%. *I experimented with Google Chrome, Microsoft Edge, Firefox and Opera.
# The 1st language
# ↓↓
request.META['HTTP_ACCEPT_LANGUAGE'] # en,fr;q=0.9,ja;q=0.8
For example, if you set English
(1st) which is This language is used to display the Google Chrome UI(Default), French
(2nd) and Japanese
(3rd) on Google Chrome as shown below:

Then, the code below returns these languages in the order as above:
# The 1st language
# ↓↓
request.META['HTTP_ACCEPT_LANGUAGE'] # en,fr;q=0.9,ja;q=0.8
Next, if you set French
(1st), English
(2nd) which is This language is used to display the Google Chrome UI(Default) and Japanese
(3rd) on Google Chrome as shown below:

Then, the code below returns these languages in the order as above:
# The 1st language
# ↓↓
request.META['HTTP_ACCEPT_LANGUAGE'] # fr,en;q=0.9,ja;q=0.8
In addition, if you want to automatically detect and apply the 1st browser language to your django website, set LocaleMiddleware to MIDDLEWARE between SessionMiddleware and CommonMiddleware as shown below. *You can see my answer explaining it in details:
# "settings.py"
MIDDLEWARE = [
...
"django.contrib.sessions.middleware.SessionMiddleware",
"django.middleware.locale.LocaleMiddleware", # Here
"django.middleware.common.CommonMiddleware",
...
]
And, you can get browser languages on frontend in JavaScript as shown below:
<script>
console.log(navigator.languages); // ["fr", "en", "ja"]
console.log(navigator.language); // fr
</script>