from langdetect import detect_langs
def englishOrFrench(string):
res = detect_langs(string)
for item in res:
if item.lang == "fr" or item.lang == "en":
return item.lang
return None
print(englishOrFrench("Bonjour")) # fr
print(englishOrFrench("The quick brown fox")) # en
print(englishOrFrench("Hallo, mein Freund")) # None
我这样做的方法是使用
detect_langs
,它返回一个具有概率的Language
对象列表,然后遍历这个列表,如果其中一个选项是英语或法语,则返回语言;如果不是这样,则返回None
。此功能在以下方面运行良好:选项1
一个选项是使用包
langid
。然后可以通过方法调用简单地限制语言:选项2
如果您真的想使用
langdetect
包,可以复制包文件夹(如果您不确定它在哪里,请使用python -m site --user-site)
),并从文件夹langdetect\profiles
中删除不需要的配置文件。不过,这不是一个非常动态的解决方案。
相关问题 更多 >
编程相关推荐