gpt4 book ai didi

Python Enchant 语言描述

转载 作者:行者123 更新时间:2023-12-03 18:50:46 61 4
gpt4 key购买 nike

我正在使用 pyenchant 模块。我在他们的文档和其他任何地方都找不到 enchant.list_languages() 中列出的语言的描述。这个函数返回一个标签列表,我需要对每种语言进行人性化的描述。

import enchant
enchant.list_languages()
['af', 'am', 'ar', 'bg', 'bn', 'br', 'ca', 'cs', 'cy', 'da', 'de', 'de_AT', 'de_CH', 'de_DE', 'el', 'en', 'en_CA', 'en_GB', 'en_US', 'eo', 'es', 'et', 'eu', 'fa', 'fo', 'fr', 'fr_CH', 'fr_FR', 'ga', 'gl', 'gu', 'he', 'hi', 'hr', 'hsb', 'hu', 'hy', 'id', 'is', 'it', 'kk', 'kn', 'ku', 'lt', 'lv', 'ml', 'mr', 'nb', 'nl', 'nn', 'no', 'nr', 'ns', 'or', 'pa', 'pl', 'pt_BR', 'pt_PT', 'ro', 'ru', 'sk', 'sk_SK', 'sl', 'st', 'sv', 'ta', 'te', 'tl', 'tl_PH', 'tn', 'ts', 'uk', 'uz', 'xh', 'zu']
如何将所有这些标签翻译成这些语言的人类友好名称(“英语”、“西类牙语”、“意大利语”等)? pyenchant 或其他库中是否有实现此功能的功能?
非常感谢!!

最佳答案

您可以使用pycountry :
要获取语言名称,您可以使用:

pycountry.languages.get(alpha_2=language)
在哪里 language是 pyenchant 语言之一。
编辑
以下是打印 pyenchant 语言名称(和国家/地区)的方法:
import pycountry

enchant_codes = [
"af", "am", "ar", "bg", "bn", "br", "ca", "cs", "cy", "da",
"de", "de_AT", "de_CH", "de_DE", "el", "en", "en_CA", "en_GB", "en_US", "eo",
"es", "et", "eu", "fa", "fo", "fr", "fr_CH", "fr_FR", "ga", "gl", "gu",
"he", "hi", "hr", "hsb", "hu", "hy", "id", "is", "it", "kk",
"kn", "ku", "lt", "lv", "ml", "mr", "nb", "nl", "nn", "no", "nr",
"ns", "or", "pa", "pl", "pt_BR", "pt_PT", "ro", "ru", "sk", "sk_SK", "sl",
"st", "sv", "ta", "te", "tl", "tl_PH", "tn", "ts", "uk", "uz", "xh", "zu",
]

for code in enchant_codes:
lang_code, _, country_code = code.partition("_")
if len(lang_code) == 2:
language = pycountry.languages.get(alpha_2=lang_code)
elif len(lang_code) == 3:
language = pycountry.languages.get(alpha_3=lang_code)
else:
language = None
language_name = language.name if language else "(unknown language)"
country = pycountry.countries.get(alpha_2=country_code) if country_code else None
country_name = country.name if country else ""
print(code, "=>", language_name, "/", country_name)

关于Python Enchant 语言描述,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66957955/

61 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com