• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell
您的位置:首页 > 脚本语言 >python > 编写简单的Python程序来判断文本的语种

编写简单的Python程序来判断文本的语种

作者:goldensun 字体:[增加 减小] 来源:互联网

goldensun 通过本文主要向大家介绍了学小语种的网站,哈尔滨小语种学校,义乌小语种培训,郑州小语种培训,实用的稀有小语种等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

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") 
 
</div>

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

 
3.注意

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

 

希望对大家有所帮助。

</div>

您可能想查找下面的文章:

  • 编写简单的Python程序来判断文本的语种
  • 编写简单的Python程序来判断文本的语种

相关文章

  • python处理圆角图片、圆形图片的例子
  • 提升Python程序运行效率的6个方法
  • python中使用enumerate函数遍历元素实例
  • 设计模式中的原型模式在Python程序中的应用示例
  • python 多进程通信模块的简单实现
  • Python环境下搭建属于自己的pip源的教程
  • 利用Python开发微信支付的注意事项
  • 举例区分Python中的浅复制与深复制
  • 解决windows下Sublime Text 2 运行 PyQt 不显示的方法分享
  • 跟老齐学Python之用while来循环

文章分类

  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell

最近更新的内容

    • 在Python中操作列表之List.append()方法的使用
    • 一个基于flask的web应用诞生 用户注册功能开发(5)
    • Python中的filter()函数的用法
    • python将人民币转换大写的脚本代码
    • python 切片和range()用法说明
    • Python中编写ORM框架的入门指引
    • 在Django中进行用户注册和邮箱验证的方法
    • python 计算文件的md5值实例
    • 剖析Python的Tornado框架中session支持的实现代码
    • Python中用startswith()函数判断字符串开头的教程

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有