Languages¶
The languages module provides functionality to access data about languages that is not bound to a given locale.
Official Languages¶
- babel.languages.get_official_languages(territory, regional=False, de_facto=False)¶
Get the official language(s) for the given territory.
The language codes, if any are known, are returned in order of descending popularity.
If the regional flag is set, then languages which are regionally official are also returned.
If the de_facto flag is set, then languages which are “de facto” official are also returned.
Warning
Note that the data is as up to date as the current version of the CLDR used by Babel. If you need scientifically accurate information, use another source!
- Parameters
territory (str) – Territory code
regional (bool) – Whether to return regionally official languages too
de_facto (bool) – Whether to return de-facto official languages too
- Returns
Tuple of language codes
- Return type
tuple[str]
- babel.languages.get_territory_language_info(territory)¶
Get a dictionary of language information for a territory.
The dictionary is keyed by language code; the values are dicts with more information.
The following keys are currently known for the values:
- population_percent: The percentage of the territory’s population speaking the
language.
- official_status: An optional string describing the officiality status of the language.
Known values are “official”, “official_regional” and “de_facto_official”.
Warning
Note that the data is as up to date as the current version of the CLDR used by Babel. If you need scientifically accurate information, use another source!
Note
Note that the format of the dict returned may change between Babel versions.
See https://www.unicode.org/cldr/charts/latest/supplemental/territory_language_information.html
- Parameters
territory (str) – Territory code
- Returns
Language information dictionary
- Return type
dict[str, dict]