当前位置:   article > 正文

python 判断文本所用的语言_编写简单的Python程序来判断文本的语种

python通过文本识别是什么计算机语言

1.问题的描述

Python进行文本处理时,有时候处理的文本中包含中文、英文、日文等多个语系的文本,有时候不能同时进行处理,这个时候就需要判别当前文本是属于哪个语系的。Python中有个langid工具包提供了此功能,langid目前支持97种语言的检测,非常好用。

2.程序的代码

以下Python是调用langid工具包来对文本进行语言检测与判别的程序代码:

import langid #引入langid模块

def translate(inputFile, outputFile):

fin = open(inputFile, 'r') #以读的方式打开输入文件

fout = open(outputFile, 'w') #以写的方式打开输出文件

for eachLine in fin: #依次读入每一行

line = eachLine.strip().decode('utf-8', 'ignore') #去除每行的首位空格等,并统一转化成Unicode

lineTuple = langid.classify(line) #调用langid来对该行进行语言检测

if lineTuple[0] == "zh": #如果该行语言大部分为中文,则不进行任何处理

continue

outstr = line #如果该行语言为非中文,则准备输出

fout.write(outstr.strip().encode('utf-8') + '\n') #输出非中文的行,从Unicode转化成utf-8输出

fin.close()

fout.close()

if __name__ == '__main__': #相当于main函数

translate("myInputFile.txt", "myOutputFile.txt")

以上代码是用来处理一个文本,将不属于中文的行依次输出到一个新的文件。

3.注意

第9、10行代码,langid.classify(line)的输出结果是一个二元组,二元组的第一项表示该文本所属的语系,如:zh表示中文、en表示英语、等等;二元组的第二项表示该文本中属于第一项中语系的所占比例。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/571585
推荐阅读
相关标签
  

闽ICP备14008679号