python实现将汉字转换成汉语拼音的库


Posted in Python onMay 05, 2015

本文实例讲述了python实现将汉字转换成汉语拼音的库。分享给大家供大家参考。具体分析如下:

下面的这个python库可以很容易的将汉字转换成拼音,其中用到了一个word.data 的字典,可点击此处本站下载。

#!/usr/bin/env python
# -*- coding:utf-8 -*-
__version__ = '0.9'
__all__ = ["PinYin"]
import os.path
class PinYin(object):
 def __init__(self, dict_file='word.data'):
  self.word_dict = {}
  self.dict_file = dict_file
 def load_word(self):
  if not os.path.exists(self.dict_file):
   raise IOError("NotFoundFile")
  with file(self.dict_file) as f_obj:
   for f_line in f_obj.readlines():
    try:
     line = f_line.split(' ')
     self.word_dict[line[0]] = line[1]
    except:
     line = f_line.split(' ')
     self.word_dict[line[0]] = line[1]
 def hanzi2pinyin(self, string=""):
  result = []
  if not isinstance(string, unicode):
   string = string.decode("utf-8")
  for char in string:
   key = '%X' % ord(char)
   result.append(self.word_dict.get(key,char).split()[0][:-1].lower())
  return result
 def hanzi2pinyin_split(self, string="", split=""):
  result = self.hanzi2pinyin(string=string)
  if split == "":
   return result
  else:
   return split.join(result)
if __name__ == "__main__":
 test = PinYin()
 test.load_word()
 string = "欢迎来到三水点靠木"
 print "in: %s" % string
 print "out: %s" % str(test.hanzi2pinyin(string=string))
 print "out: %s" % test.hanzi2pinyin_split(string=string, split="-")

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
动态创建类实例代码
Oct 07 Python
python常用web框架简单性能测试结果分享(包含django、flask、bottle、tornado)
Aug 25 Python
web.py中调用文件夹内模板的方法
Aug 26 Python
Python 元类实例解析
Apr 04 Python
python实现在IDLE中输入多行的方法
Apr 19 Python
Python 从一个文件中调用另一个文件的类方法
Jan 10 Python
python+webdriver自动化环境搭建步骤详解
Jun 03 Python
Python实现基于SVM的分类器的方法
Jul 19 Python
python使用原始套接字发送二层包(链路层帧)的方法
Jul 22 Python
python实现tail实时查看服务器日志示例
Dec 24 Python
python基于opencv检测程序运行效率
Dec 28 Python
TensorFlow实现指数衰减学习率的方法
Feb 05 Python
python基于Tkinter库实现简单文本编辑器实例
May 05 #Python
python实现的简单窗口倒计时界面实例
May 05 #Python
给Python中的MySQLdb模块添加超时功能的教程
May 05 #Python
用Python实现一个简单的多线程TCP服务器的教程
May 05 #Python
简单介绍Python中的try和finally和with方法
May 05 #Python
python中的闭包用法实例详解
May 05 #Python
Python闭包实现计数器的方法
May 05 #Python
You might like
Syphon 虹吸式咖啡壶冲煮–拨动法
2021/03/03 冲泡冲煮
dedecms后台验证码总提示错误的解决方法
2007/03/21 PHP
YII Framework框架教程之国际化实现方法
2016/03/14 PHP
php下载远程大文件(获取远程文件大小)的实例
2017/06/17 PHP
PHP读取文件,解决中文乱码UTF-8的方法分析
2020/01/22 PHP
Some tips of wmi scripting in jscript (1)
2007/04/03 Javascript
JSON 学习之完全手册 图文
2007/05/29 Javascript
jQuery示例收集
2010/11/05 Javascript
JavaScript的函数式编程基础指南
2016/03/19 Javascript
举例讲解jQuery中可见性过滤选择器的使用
2016/04/18 Javascript
jQuery对象与DOM对象转换方法详解
2016/05/10 Javascript
JQuery 设置checkbox值二次无效的解决方法
2016/07/22 Javascript
JavaScript 基础表单验证示例(纯Js实现)
2017/07/20 Javascript
总结js中的一些兼容性易错的问题
2017/12/18 Javascript
详解自定义ajax支持跨域组件封装
2018/02/08 Javascript
angular 内存溢出的问题解决
2018/07/12 Javascript
JavaScript实现背景自动切换小案例
2019/09/27 Javascript
vue中改变滚动条样式的方法
2020/03/03 Javascript
Vue项目利用axios请求接口下载excel
2020/11/17 Vue.js
[02:49]DAC2018决赛日TOP5 LGD开启黑暗之门绝杀VP
2018/04/08 DOTA
Python实现从订阅源下载图片的方法
2015/03/11 Python
Python图像灰度变换及图像数组操作
2016/01/27 Python
Python实现图片拼接的代码
2018/07/02 Python
Django缓存Cache使用详解
2020/11/30 Python
selenium+headless chrome爬虫的实现示例
2021/01/08 Python
anaconda升级sklearn版本的实现方法
2021/02/22 Python
css3的transition效果和transfor效果示例介绍
2013/10/30 HTML / CSS
CSS3自定义滚动条样式的示例代码
2017/08/21 HTML / CSS
美国医疗用品、医疗设备和家庭保健用品商店:Medical Supply Depot
2018/07/08 全球购物
十岁生日同学答谢词
2014/01/19 职场文书
城建学院毕业生自荐信
2014/01/31 职场文书
职工擅自离岗检讨书
2014/09/23 职场文书
荆州古城导游词
2015/02/06 职场文书
Python一些基本的图像操作和处理总结
2021/06/23 Python
使用springMVC所需要的pom配置
2021/09/15 Java/Android
在ubuntu下安装go开发环境的全过程
2022/08/05 Golang